사용자가 컴퓨터를 쉽게 다룰 수 있게 해주는 인터페이스이며, 한정된 메모리나 시스템 자원을 효율적으로 분배한다.

 

1. 운영체제의 역할과 구조

 - CPU 스케쥴링 및 프로세스 관리 : CPU에 프로세스 생성, 삭제, 할당 및 반환

 - 메모리 관리

 - 디스크 파일 관리 : 디스크 파일을 보관할 방법 관리

 - I/O 디바이스 관리

 - 운영체제의 구조 : 유저 프로그램 <- GUI <- 시스템콜 <- 커널 <- 드라이버 <- 하드웨어 (GUI부터 드라이버가 운영체제) ->추상화 계층

 - 시스템콜 : 운영체제가 커널(항상 메모리에 상주하는 운영체제의 중요한 부분)에 접근하기 위한 인터페이스 -> 커널함수 사용, 주로 커널 모드에서 파일을 읽고 유저모드에서 로직을 실행하여 리소스에 대한 직접적 접근을 차단한다.

 - modebit : 시스템콜이 작동할 때 modebit을 참고하여 유저모드, 커널모드를 구분할 수 있다.

 

 

2. 컴퓨터의 요소

 - CPU(Central Processing Unit) : 산술논리연산장치, 제어장치, 레지스터로 구성, 인터럽트에 의해 메모리에 존재하는 명령어를 해석

 - 제어장치(CU, Control Unit) : 프로세스 조작을 지시하는 CPU의 일부분 입출력 통신제어, 명령어 해석, 데이터 처리 순서 결정

 - 레지스터 : 임시기억장치로 CPU와 직접연결되어 연산 속도가 매우 빠르다.

 - 산술논리연산장치(ALU, Arithmetic Logic Unit) : 산술 연산 및 논리 연산을 계산하는 디지털 회로

 - CPU의 연산 처리 : 제어장치가 메모리와 레지스터에 값을 부여 -> 제어장치가 레지스터의 값 계산하도록 산술논리연산장치 작동 -> 제어장치가 계산된 값을 레지스터에서 메모리로 저장

 - 인터럽트 : 신호에 맞춰 CPU를 잠시 정지한다. -> 입출력 연산이 CPU의 속도보다 느리기 때문에 발생, 운영체제에 시스템콜을 요청

 - 하드웨어 인터럽트 : I/O 디바이스에 의해 발생하는 인터럽트

 - 소프트웨어 인터럽트(트랩) 

 - DMA 컨트롤러 : I/O디바이스가 메모리에 직접 접근할 수 있도록 한다. CPU에 너무 많은 인터럽트 요청이 들어오지 않도록 한다.

 - 메모리(RAM, Random Access Memory) : 데이터, 명령어 등을 기록

 - 타이머 : 특정 프로그램에 시간 제한을 한다.

 - 디바이스 컨트롤러 : I/O 디바이스들만을 컨트롤 하는 작은 CPU

'CS' 카테고리의 다른 글

3. 3 프로세스와 스레드  (0) 2023.03.06
3. 2 메모리  (0) 2023.03.02
2. 5 HTTP  (1) 2023.02.25
2. 4 IP 주소  (0) 2023.02.21
2. 3 네트워크 기기  (0) 2023.02.11

+ Recent posts