운영체제
- 하드웨어 위에 설치되어 하드웨어 계층과 다른 소프트웨어 계층을 연결하는 소프트웨어 계층
- 컴퓨터 시스템의 자원을 관리하고, 사용자가 컴퓨터를 사용할 수 있는 환경을 제공하는 역할 수행
- 악성 프로그램에 대한 사용자와 운영체제 자신을 보호
운영체제의 목적
- 처리 능력(throughput) 향상: OS는 자원 관리를 통해 일정 시간 내에 시스템이 처리하는 일의 양을 향상시킨다.
- 반환 시간(turnaround time) 단축: OS는 사용자가 시스템에 요청한 작업을 완료할 때까지 소요되는 시간을 단축시킨다.
- 사용 가능도(availability) 향상: 사용 가능도는 시스템 자원을 얼마나 빨리 제공할 수 있는가를 의미한다. OS는 사용자가 컴퓨터를 사용해야 할 때 자원을 즉시 사용할 수 있게 한다.
- 신뢰도(reliability) 향상 : 신뢰도는 시스템이 주어진 문제를 정확하게 푸는지를 의미한다. OS는 입력 값에 대한 정확한 결과 값을 줄 수 있도록 신뢰도를 향상해야 한다.
커널
- 운영체제의 핵심 서비스를 담당하는 부분으로 컴퓨터 하드웨어와 프로세스의 보안, 자원관리, 하드웨어 추상화 같은 중요한 역할을 수행한다.
- 특히 자원 관리를 위해 CPU 스케줄링, 메모리 관리, 입출력 관리, 파일 시스템 관리 등을 담당한다.
- 운영체제가 제공하는 서비스 중 커널에 포함되지 않는 서비스도 있다. ex.사용자 인터페이스
커널 모드 : 하드웨어에 직접 접근해 메모리 CPU와 같은 자원을 사용할 수 있다.
사용자 모드 : 커널 모드의 자원에 접근할 수 없게 제한을 둔다
시스템 콜 : 사용자 모으데서 실행된 프로세스가 자원에 접근하려면 시스템 콜을 호출해서 커널에 요청해야한다.
시스템
다중 프로그래밍 시스템
- 메모리의 사용자 영역에 프로그램이 여러개 탑재되어 있고, CPU가 이를 번갈하 수행한다. (메모리 공간 분할해서 적재)
- 수행하는 프로세스는 스케줄링을 통해 결정한다.
- 입출력이 일어날 때만 스케줄링이 일어나, 한 프로그램의 입출력 작업이 완료되더라도 해당 프로그램의 작업을 다시 시작할 수 없다는 단점이 있다.
시분할 시스템
- 다중 프로그래밍 방식의 단점을 보완하기 위해 타임 슬라이스를 활용한다.
- 타임 슬라이스 : 타이머 인터럽트를 통해 구현 (일정 시간 단위 분할)
- 입출력 발생과 타임슬리이스에서 무조건 스케줄링을 진행한다. 이에 따라 입출력 후 대기시간이 줄어들어 대화가 빈번한 프로그램도 자연스럽게 수행될 수 있다.
대화형 시스템
- 사용자의 요청에 대한 결과를 곧바로 얻을 수 있는 시스템
다중 처리기 시스템 (멀티 프로세서 시스템)
- 멀티 프로세싱은 다수의 프로세서가 협력적으로 여러 작업들을 동시에 처리하는 것을 말한다.
- 다수의 작업을 병렬로 처리할 수 있고, 어떤 프로세서가 고장날지라도 작업이 중단되지 않는 장점이 있다.
풀링(Polling) : 운영체제가 하드웨어장치의 상태레지스터를 읽음으로써 명령의 수신 여부를 주기적으로 확인하는 것
인터럽트 : CPU가 프로그램을 실행하는 중에 I/O 하드웨어장치나 다른 예외 상황의 발생으로 인해 특별한 처리가 필요할 때 CPU에 이를 알려 처리하도록 하는 것
DMA(Direct Memory Access) : 직접 메모리 접근
- 하드웨어장치의 들이 메모리에 직접 접근하여 읽거나 쓸 수 있도록 하는 기능
- CPU의 개입 없이 I/O 장치와 기억장치 사이의 데이터를 전송하는 접근 방식
동기식 I/O : 입출력이 일어날 때 순서를 보장함 - 해당 입출력 작업이 완료되어야지만 다음 입출력 요청 수행
비동기식 I/O : 입출력이 일어날 때 순서를 보장하지 않음 - 해당 입출력 작업의 완료를 기다리지 않고 다음 요청이 들어오면 제어권을 넘겨주어 다른 작업을 수행할 수 있도록 함.
'CS' 카테고리의 다른 글
[네트워크] OSI 7계층, TCP/IP, HTTP (0) | 2023.10.14 |
---|---|
[네트워크] 쿠키, 세션, REST (0) | 2023.10.14 |
[운영체제] 메모리 관리, 가상메모리 (0) | 2023.10.14 |
[운영체제] 프로세스 동기화, 데드락 (0) | 2023.10.07 |
[네트워크] 네트워크 레이어, IP 프로토콜 (0) | 2023.10.07 |