bob 11th 지원대상자가 이수해야 할 사전 교육에 대한 학습 일지입니다.
2. 운영체제의 기능과 구조
운영체제의 기능
- 자원 관리: 제어서비스 향상
- 입출력 장치 관리
- 시스템 자원 관리
- 에러 검출과 조치
- 시스템 관리
- 시스템보호(사용자 권한부여)
- 네트워크 관리
- Command Interpreter(명령에 대한 번역)
운영체제의 구조
(커널에 포함되는)운영체제 5계층
- 1계층: 프로세스 동기화&스케줄링
- 2계층: 메모리의 할당&회수
- 3계층: 프로세스 생성, 제거, 시작, 정지
- 4계층: 키보드,마우스 스케줄링
- 5계층: 파일 생성, 소멸, 열기, 닫기
*HAL(Hardware Abstraction Layer): 하드웨어와 1계층 사이에 존재하여 물리적인 하드웨어와 소프트웨어의 사이에 있는 추상적인 계층이다.
커널
- 하드웨어와 프로그램들을 이격시키고, 하드웨어와 직접적으로 상호작용함
- 프로세스와 파일의 관리를 담당하며, 입출력, 메모리, 시스템호출 인터페이스를 수행함
- Interrupt(지금 하던 일을 멈추고 다음에 무슨 작업을 할치 결정하는 역할) 기능을 수행
프로세스 관리
- 하드웨어에 의존된 가장 하위 단계 수준으로 프로세스 스케줄링을 통해 프로세스 관리
메모리 관리
주기억장치 관리
- 주기억장치의 접근을 관리, 제어하는 처리 장치의 부분
ROM(Read Only Memory): 바꿀 수 없는 반도체로 반영구적인 기억 장치이다.
(ex. P-ROM, mask-ROM)- RAM(Random Access Memory): 휘발성 메모리 특성을 가지고 있으며, 전원이 유지되어야 한다.
보조기억장치 관리
- HDD, SSD, USB 메모리와 같은 장치에 대한 접근 관리 및 제어 수행
주변장치 관리(입출력 관리)
- Device Driver: OS와 응용 프로그램 및 하드웨어의 인터페이스 담당 프로그램
- 데이터의 입출력 방식
- 직접 입출력(Direct I/O)
- 입력: 장치 제어기 -> cpu 레지스터 -> 주기억장치
- 출력: 주기억장치 -> cpu 레지스터 -> 장치 제어기
- polling 방식: 장치 구동기가 상태 레지스터를 계속 감시함(read&write)
- 간접 입출력(InDirect I/O)
- CPU가 담당하지 않고 “Interrupt”를 사용하여 전용 입출력 프로세서를 사용하는 방식
- 전용 입출력 프로세서
- DMA(Direct Memory Access: CPU와 주변 장치 사이에 존재하여 대신 전달
- Channel: 선택(1:1), 멀티플렉서(1:N), 블록 멀티플렉서
- 직접 입출력(Direct I/O)
- 버퍼링과 스풀링
- 버퍼링: 입출력 장치와 보조기억 장치 <-> CPU 처리속도 차이를 해결(메모리)
- 스풀링: 버퍼링과 비슷하나 디스크를 버퍼처럼 사용(디스크)
파일 관리
- 파일에 대한 조작, 저장방식, 접근 방식에 대한 관리
3. 운영체제의 기술발전 흐름
단순모니터
- 1940년대
일괄처리 시스템
- 1950년대
- 여러 개의 작업을 하나로 묶어 진행
- 보조기억장치의 속도가 느려 모니터링, 버퍼링, 스풀링 개념이 도입
다중프로그래밍 시스템
- 1960년대
- 입출력장치와 CPU의 속도차이 개선
- 프로세스를 쉬지 않게하여 2개 이상의 프로그램을 동시에 사용
시분할 처리 시스템
- TSS: Time-Sharing System
- 다중프로그래밍 시스템의 개념에서 프로세스의 사용 시간을 분할하는 개념 도입
- 다중 사용자에게 Time Slice를 할당
분산처리 시스템
- DPS: Distributed Processing System
- 기능을 지역적, 기능적으로 분산하여 네트워크를 통해 처리
- 자원 공유
- 계산속도 향상
- 신뢰도 향상
- 통신 기능(with Network)
다중처리 시스템
- MPS: Multi Processing System
- 여러 작업을 하나의 시스템(다수의 CPU)에서 동시에 처리
- 작업 속도와 신뢰성 향상
실시간 시스템
- RTS: Real Time System
- 자료 발생 지점에서 단말기를 통해 직접 입출력됨
- 처리 시간 및 비용 단축의 효과
- 자료가 무작위하게 도착하므로 입출력 자료의 임시 저장과 대기가 필요
2000년대 이후에는 가상화가 발전해오고 있다.