1. UNIX의 개요 및 특징
- 1960년대 AT&T 벨 Bell 연구소, MIT, General Electric이 공동 개발한 운영체제
- 시분할 시스템 Time Sharing System 을 위해 설계된 대화식 운영체제
- 소스가 공개된 개방형 시스템
- 대부분 C 언어로 작성되어 이식성이 높음, 장치, 프로세스 간의 호환성이 높음
- 크기가 작고 이해하기 쉬움
- 다중 사용자, 다중 작업 지원 : 하나 이상의 작업을 백그라운드에서 수행하므로 여러 작업을 동시에 처리할 수 있음
- 다중 사용자 Multi-User : 여러 사용자가 동시에 시스템을 사용하는 것
- 다중 작업 Multi-Tasking : 여러 개의 작업이나 프로그램을 동시에 수행하는 것
- 많은 네트워킹 기능을 제공하므로 통신망 관리용 운영체제로 적합
- 트리 구조의 파일 시스템을 갖음
- 전문적인 프로그램 개발에 용이
- 다양한 유틸리티 프로그램들이 존재
2. UNIX 시스템의 구성
- 커널 Kernel
- UNIX의 가장 핵심적인 부분
- 컴퓨터가 부팅될 때 주기억장치에 적재된 후 상주하면서 실행
- 하드웨어를 보호, 프로그램과 하드웨어 간의 인터페이스 역할을 담당
- 프로세스(CPU 스케줄링) 관리, 기억장치 관리, 파일 관리, 입출력 관리, 프로세스간 통신, 데이터 전송 및 변환 등의 여러 가지 기능을 수행
- UNIX에서의 프로세스 간 통신
- 각 프로세스는 시스템 호출을 통해 커널의 기능을 사용
- 시스템 호출 : 프로세스가 커널에 접근하기 위한 인터페이스를 제공하는 명령어
- 프로세스 간 통신은 시그널, 파이프, 소켓 등을 사용
- 시그널 Signal : 간단한 메시지를 이용하여 통신하는 것, 초기 UNIX 시스템에서 사용
- 파이프 Pipe : 한 프로세스의 출력이 다른 프로세스의 입력으로 사용되는 단방향 통신 방식
- 소켓 Socket : 프로세스 사이의 대화를 가능하게 하는 쌍방향 통신 방식
- 각 프로세스는 시스템 호출을 통해 커널의 기능을 사용
- UNIX에서의 프로세스 간 통신
- 쉘 Shell
- 사용자의 명령어를 인식하여 프로그램을 호출하고 명령을 수행하는 명령어 해석기
- 시스템과 사용자 간의 인터페이스를 담당
- DOS의 COMMAND, COM과 같은 기능을 수행
- 주기억장치에 상주하지 않고, 명령어가 포함된 파일 형태로 존재, 보조 기억장치에서 교체 처리가 가능
- 파이프라인 기능을 지원하고 입출력 재지정을 통해 출력과 입력의 방향을 변경할 수 있음
- 파이프라인 : 둘 이상의 명령을 함께 묶어 처리한 결과를 다른 명령의 입력으로 전환하는 기능
- 공용 Shell(Bourne Shell, C Shell, Korn Shell)이나 사용자 자신이 만든 Shell을 사용할 수 있음
- Utility Program
- 일반 사용자가 작성한 응용 프로그램을 처리하는데 사용
- DOS에서의 외부 명령어에 해당
- 유틸리티 프로그램에서는 에디터, 컴파일러, 인터프리터, 디버거 등이 있음
3. LINUX의 개요 및 특징
- 1991년 리누스 토발즈가 UNIX를 기반으로 개발한 운영 체제
- 프로그램 소스 코드가 무료로 공개되어 있기 때문에 프로그래머가 원하는 기능을 추가할 수 있고, 다양한 플랫폼에 설치하여 사용이 가능, 재배포가 가능
- UNIX와 완벽하게 호환
- 대부분의 특징이 UNIX와 동일
4. MacOS의 개요 및 특징
- 1980년대 애플 사가 UNIX를 기반으로 개발한 운영체제
- 애플 사에서 생산하는 제품에서만 사용이 가능
- 드라이버 설치 및 install, uninstall의 과정이 단순
5. 파일 디스크립터 File Descriptor (파일 서술자)
- 파일 제어 블록 : 파일을 관리하기 위한 시스템(운영체제)이 필요로 하는 파일에 대한 정보를 가진 제어 블록
- 파일마다 독립적으로 존재, 시스템에 따라 다른 구조를 가질 수 있음
- 보조기억장치 내에 저장되어 있다가 해당 파일이 Open될 때 주기억장치로 옮겨짐
- 파일 시스템이 관리하므로 사용자가 직접 참조할 수 없음
'자격증 > 정보처리기사' 카테고리의 다른 글
[정보처리기사 필기] 응용 SW 기초 기술 활용 - 115. 가상기억장치 구현 기법 / 페이지 교체 알고리즘 (0) | 2025.02.21 |
---|---|
[정보처리기사 필기] 응용 SW 기초 기술 활용 - 114. 기억장치 관리의 개요 (0) | 2025.02.20 |
[정보처리기사 필기] 응용 SW 기초 기술 활용 - 112. Windows (0) | 2025.02.20 |
[정보처리기사 필기] 응용 SW 기초 기술 활용 - 111. 운영체제의 개념 (0) | 2025.02.20 |
[정보처리기사 필기] 프로그래밍 언어 활용 - 110. 예외 처리 (0) | 2025.02.20 |