-
UNIX(유닉스)
- 미국 벨(Bell) 연구소에서 개발된 운영체제로, 프로그램 대부분이 C언어로 수정되면서 이식성이 높아지고 동시 다중 사용자 및 다중작업의 실행을 지원할 수 있는 대화형 소프트웨어이다.
주로 서버용 컴퓨터에서 사용되는 운영체제
ð 포털이나 대기업의 서버에 사용되며 보안성이 매우 뛰어남
- 특징
1. 시분할 시스템(Time Sharing System)을 위해 설계된 대화식 운영체제 à shell 이용
2. 대부분 C언어로 작성되어 있어 이식성이 높으며 장치, 프로세스 간의 호환성이 높다.
3. 다중 사용자(Multi-user), 다중 작업(Multi-Tasking)을 지원
4. 많은 네트워킹 기능을 제공하므로 통신망 관리용 운영체제로 적합
5. 트리구조의 파일 시스템을 가진다
- UNIX 시스템의 구성 3가지
1. 커널(Kernel): 유닉스 시스템이 부팅될 때 가장 먼저 읽히는 운영체제 핵심 부분
하드웨어와 관련된 작업을 수행하는 것으로 사용자들은 커널에 접근 불가능
+) 시스템 호출(System call): 커널과 사용자 사이의 인터페이스 역할을 한다.
(사용자가 커널의 기능을 사용할 수 있도록 하는 역할)
à 보통 시스템 콜을 직접 사용하기 보다 해당 시스템 콜을 사용해서 만든 API를 사용
2. 쉘(Shell): 사용자가 운영체제 기능과 서비스를 조작할 수 있도록 인터페이스를 제공하는 프로그램. 유닉스 터미널
3. 유틸리티 및 응용 프로그램: 유닉스는 많은 프로그래밍 언어를 지원하고, 파일작성, 파일출력, 파일 내용을 선택적으로 변경시키는 기능 등과 같은 여러 가지 유틸리티와 다른 컴퓨터와 통신을 가능하게 해주는 여러 가지 응용 프로그램으로 구성
- UNIX File System
유닉스는 일반적인 파일들 뿐 아니라 터미널, 프린터, 디스크 등 모든 주변 장치들도 하나의 파일로 취급
è 장점: 프로그램을 작성하는 것 없이 옮기기, 쓰기, 읽기를 간단하게 할 수 있다.
1. 파일 종류 – 정규파일, 디렉토리 파일, 특수 파일, FIFO, Socket
① 일반파일, 정규파일: 각종 텍스트파일, 시스템 파일, 이미지 파일 등 유닉스에서 사용되는 대부분의 파일
② 디렉토리 파일: 다른 파일들의 목록과 그 파일들의 정보(주소)를 가리키는 포인터들을 가지는 파일
(우리가 아는 폴더)
③ Block Special file: 버퍼를 이용해 블록단위로 데이터를 쓰고 읽는다. (디스크 파일)
④ Character Special file: 버퍼를 쓰지 않고 데이터를 쓰거나 읽는 것이 즉시 일어난다. (키보드, 마우스 입출력)
⑤ FIFO (named PIPE): 프로세스간 통신에 쓰이는 이름이 있는 파이프 파일
⑥ Socket(소켓): 네트워크의 입출력을 담당하는 API로 두 호스트 컴퓨터 사이의 정보를 전달
⑦ Symbolic link: 다른 파일을 가리키는 타입의 파일로 윈도우의 바로가기 파일과 비슷하다.
2. 파일의 속성 (‘ls -l’ 명령어를 통해 해당 디렉토리와 속한 파일 정보 알 수 있다.)
① 파일 종류 : d(디렉토리) , b(블록 디바이스 파일), c{문자 디바이스 파일), -(일반 정규 파일) 등...
② Permission: 여러 유형의 유저들(user, group, others)이 파일에 접근할 수 있는 방법(read, write, execute)을 결정
à chmod()를 통해 소유자가 변경 가능
User: 파일을 만든 소유자
Group: 파일을 만든 소유자가 속한 그룹의 사용자
Other: 기타 사용자
③ 링크 카운터(link counter): 동일한 inode를 참조하는 파일 수
④ Owner: 해당 디렉토리 및 파일의 소유주 이름 à chown명령 사용해 변경 가능
⑤ Group: 파일이 속한 그룹의 이름 à chgrp명령 이용해 변경 가능
inode : 파일을 기술하는 디스크 상의 데이터 구조, 파일에 대한 중요한 정보를 갖고 있다.
각각의 inode들은 i-번호라고 하는 고유한 식별 번호를 갖고 있다.(key역할)
- inode 에 저장되어 있는 정보
* 파일의 소유권 (사용자,그룹)
* 파일의 액세스 모드
* 파일의 타임스탬프 (파일의 마지막 수정, 액세스)
* 파일의 종류