https://sites.google.com/view/hpclab/courses/operating-system
https://youtu.be/EdTtGv9w2sA
한국기술교육대학교 김덕수교수님
운영체제 강의 듣고 정리합니다.
Operating Systems overview
단일 작업(Single-tasking system)
다중 작업(Multi-tasking system)
동시에 여러 작업(프로세스)의 수행 가능
운영체제의 기능 및 구조가 복잡
예) Unix/Linux, Windows 등
Batch processing system
Time-sharing system
Distributed processing system
Real-time system
- 실시간 시스템
운영체제 개념 존재하지 않음
실행하는 작업 별 순차 처리
- 각각의 작업에 대한 준비 시간이 소요
모든 시스템을 중앙(전자계산소 등)에서 관리 및 운영
사용자의 요청 작업(천공카드 등)을 일정 시간 모아 두었다가 한번에 처리
시스템 지향적 (System-oriented)
- 장점
- 많은 사용자가 시스템 자원 공유
- 처리 효율(throughput) 향상
- 단점
- 생산성(productivity) 저하
- 같은 유형의 작업들이 모이기를 기다려야 함
- 긴 응답시간(turnaround time)
- 약 6시간 (작업 제출에서 결과 출력까지의 시간)
여러 사용자가 자원을 동시에 사용
사용자 지향적(User-oriented)
장점
단점
- 통신 비용 증가
- 통신선 비용, 보안 문제 등
- 개인 사용자 체감 속도 저하
- 동시 사용자 수가 높아짐 → 시스템 부하가 큼 → 느려짐
개인이 시스템 전체 독점
CPU 활용률(utilization)이 고려의 대상이 아님
OS가 상대적으로 단순함
장점
단점
- 성능(performance)이 낮음
단일 시스템 내에서 둘 이상의 프로세서 사용
메모리 등의 자원 공유 (Tightly-coupled system)
사용목적
프로세서간 관계 및 역할 관리 필요
네크워크를 기반으로 구축된 병렬처리 시스템 (Loosely-coupled system)
장점
단점
- 구축 및 관리가 어려움
작업 처리에 제한시간(deadline)을 갖는 시스템
작업(task)의 종류
- Hard real-time task
- 시간 제약을 지키지 못하는 경우 시스템에 치명적 영향
- 예) 발전소 제어, 무기 제어 등
- Soft real-time task
- 동영상 재생 등
- Non real-time task
커널(Kernel)
유틸리티 (Utility)
- 비상주 프로그램
- UI등 서비스 프로그램
장점
단점
- 커널의 거대화
- 오류 및 버그, 추가 기능 구현 등 유지보수가 어려움
- 동일 메모리에 모든 기능이 있어, 한 모듈의 문제가 전체 시스템에 영향 (예, 악성 코드 등)
장점
단점
- 단일구조 대비 성능 저하
- 원하는 기능 수행을 위해 여러 계층을 거쳐야 함
커널의 크기 최소화
- 필수 기능만 포함
- 기타 기능은 사용자 영역에 수행
프로세스(Process) 관리
프로세서(Processor) 관리
메모리(Memory) 관리
파일(File) 관리
입출력(I/O) 관리
보조 기억 장치 및 기타 주변장치 관리 등
프로세스 (Process)
OS의 프로세스 관리 기능
프로세스 정보 관리
중앙 처리 장치(CPU)
프로세스 스케쥴링(Scheduling)
프로세서 할당 관리
- 프로세서들에 대한 프로세서 할당
- 한 번에 하나의 프로세스만 사용 가능
주기억장치
Multi-user, Multi-tasking 시스템
메모리 할당 방법(scheme)
- 전체 적재
- 장점: 구현이 간단 / 단점: 제한적 공간
- 일부 적재(virtual memory concept)
- 프로그램 및 데이터의 일부만 적재
- 장점: 메모리의 효율적 활용 / 단점: 보조기억 장치 접근 필요
파일: 논리적 데이터 저장 단위
사용자 및 시스템의 파일 관리
디렉토리(directory) 구조 지원
파일 관리 기능
- 파일 및 디렉토리 생성 / 삭제
- 파일 접근 및 조작
- 파일을 물리적 저장 공간으로 사상(mapping)
- 백업 등
입출력(I/O) 과정
- OS를 반드시 거쳐야 함
Disk
Networking
Security and Protection system
Command interpreter system
System call interface