본문 바로가기

분류 전체보기62

02. 리눅스 이해(2) * 쉘(Shell) - 기능 명령어 해석, 프로그래밍, 사용자 환경 설정 - 종류 본쉘(sh) : 최초의 쉘. 유닉스 v7에서 처음 등장, 현재는 잘 안쓰임. C쉘(csh) : 앨리어스, 히스토리 기능 포함. 쉘 스크립트 구문 형식이 C언어와 동일. 콘쉘(ksh) : 80년대 중반 벨연구소 개발. 본쉘과 호환성 유지, 앨리어스, 히스토리 기능 제공. 배시쉘(bash) : 88년. 본쉘과 호환성 유지. C쉘, 콘쉘의 편리한 기능 모두 포함. 리눅스의 기본 쉘. 대시쉘(dash) : 97년. 본쉘 기반. POSIX 표준 준수하며 작은 크기. 우분투는 v.6.10 부터 대시쉘 사용. - 로그인 쉘과 서브 쉘 로그인 쉘 : 로그인 하면 가장 처음 실행되는 쉘. 서브 쉘 : 사용자가 프롬프트에서 다른 쉘을 실행해.. 2023. 10. 25.
02. 리눅스 이해(1) * 사용자 계정 관련 파일 - /etc/passwd 파일 사용자 계정 정보가 저장되어 있음. 형식 ┌ 로그인 ID: 사용자 계정의 이름 x : 초기 유닉스 시스템에서 사용자 암호를 저장하던 항목 (현재는 /etc/shadow에 암호 저장) UID : 사용자ID 번호로 시스템이 사용자를 구별하기 위해 사용하는 번호 + 일반적으로 0~999번과 65534번은 시스템 사용자를 위한 UID로 예약 + 일반 사용자는 UID 1000번부터할당(root 계정은0번) GID : 그룹ID를 나타낸다. 리눅스에서 사용자는 무조건 한 개 이상의 그룹에 소속 설명 : 사용자의 실명이나 부서명, 연락처 등 사용자에 대한 일반적인 정보를 기록.. 2023. 10. 25.
01. 리눅스 기초 * 리눅스(Linux) 1991년 8월 26일 핀란드의 리누스 베네딕트 토발즈(Linus Benedict Torvalds)가 미닉스라는 교육용 OS를 참조하여 개발한 OS. 오픈소스이므로 비용이 없고, GUI가 없어 리소스 소모가 적다는게 큰 강점임. 서버용 운영체제로 많이 사용됨. 다양한 배포판이 있고, Ubuntu, CentOS 등이 유명함. ( 배포판 = 리눅스 커널 + 각종 컴포넌트(윈도우 시스템, 서비스 데몬, 패킺 매니저, 응용 프로그램 등) ) * 파일 & 디렉토리(Directory) 리눅스는 모든 것을 파일로 관리함. - 파일 종류 일반 파일 : 텍스트 파일, 실행 파일, 이미지 파일 등 주로 데이터를 저장. 디렉토리(Directory) : 해당 디렉토리에 저장된 파일이나 하위 디렉토리에 .. 2023. 10. 25.
03. 그리디 알고리즘(Greedy Algorithm) Q. 주어진 거스름돈을 가장 적은 수의 동전으로 거슬러주는 알고리즘을 고안하라. (이후로 후보군 집합을 C, 해결책 집합을 S라고 명명함.) A. 그리디 알고리즘에서 필요한 세 가지 함수 1. Select() - 조건에 맞는 원소를 선택 2. Feasible() - S 집합에 들어갈 수 있는지 판단 3. Solution() - 문제가 해결되었는지 확인 * 최적화 문제 대상 함수 $f$를 제약 조건(Condition or Constraint) C에 맞게 최적화(대체로 최대화 또는 최소화) 하는 것. 가능(feasible)한 해결책 : C를 만족하는 아무 결과 최적의 결과 : 대상 함수를 최적화하는 해결책 * 그리디 알고리즘(Greedy Algorithm) 현재 갖고 있는 정보만을 가지고 결정을 내리는 것... 2023. 10. 23.
02. 알고리즘 분석 알고리즘의 효율성 분석을 위한 만능 공식은 없음. 대신, 몇몇 기본적인 방법들이 존재함. 알고리즘 분석은 대체로 안에서 바깥쪽으로 진행됨. 1. 순차적 규칙(Sequencing Rule) P1과 P2가 알고리즘의 두 부분이라고 한다면, 각각은 하나의 명령어이거나 복잡한 서브-알고리즘일 것임. 추가로, t1과 t2를 P1과 P2의 실행에 걸리는 시간이라고 했을 때 순차적 규칙에 의하면, P1과 P2의 실행에 거리는 시간은 단순히 t1+t2임. 최대 규칙(Maximum Rule)에 따르면, 이 시간은 θ( max{t1, t2} )임. 2. for 반복문 for i ← 1 to m, do P(i); 이 반복은 큰 알고리즘의 일부이고, 사이즈 n짜리 인스턴스에서 동작함. 2-1. P(i)에 걸리는 시간이 i와 .. 2023. 10. 18.
01. 알고리즘이란 * 문제와 해결방법 2 + 3 = ? 3 + 5 = ? 5 + 2 = ? ... 위와 같은 상황일 때, 알고리즘의 측면에서 문제는 한 개임. 일반적으로 말하는 문제를 여기선 인스턴스라고 함. 즉, 위에는 인스턴스가 3개인 것임. 해당 과목에서 "문제(Problem)"와 "인스턴스(Instance)"는 구분되어 사용됨에 유의할 것. - 한 문제는 많은(대체로 무수히 많은) 인스턴스를 가짐. 예를 들어, 두 양의 정수가 주어졌을때, 최대공약수(GCD, Greatest Common Divisor) 구하기라는 "문제"가 있을 때, 461,952 와 116,298 의 최대공약수를 구하기 (정답 = 18) 와 같은 "인스턴스"가 얼마든지 생성 될 수 있음. * 일반화 문제 P ) f : D -> R 인 f를 구해라.. 2023. 10. 11.