운영체제는 현존하는 프로그램 중 규모가 가장 큰 프로그램 중 하나!
운영체제의 심장 "커널"
커널이란?
: 운영체제의 핵심 서비스를 담당하는 부분.
- 운영체제에는 속하는 데 커널에는 속하지 않는 기능 - 유저 인터페이스(UI; User Interface)
>> 사용자와 컴퓨터 간의 통로일 뿐 운영체제의 핵심 기능(커널)은 아님.
- 운영체제는 응용프로그램들이 자원에 접근하려 할 때 오직 자신을 통해서만 접근하도록 하여 자원을 보호.
응용프로그램이 자원에 접근하려면 운영체제에 도움을 요청(== 운영체제의 코드를 실행)해야 함.
이중모드와 시스템 호출
- 이중모드 : CPU가 명령어를 실행하는 모드를 크게 사용자 모드와 커널 모드로 구분하는 방식.
사용자 모드 | - 운영체제 서비스를 제공받을 수 없는 실행 모드 - 커널 영역의 코드를 실행할 수 없는 실행 모드 - 자원 접근 불가 |
커널 모드 | - 운영체제의 서비스를 제공받을 수 있는 실행 모드 - 자원 접근을 비롯한 모든 명령어 실행 가능 |
- 시스템 호출: 운영체제 서비스를 제공받기 위해 커널 모드로 전환하는 방법. 커널 모드로 전환하여 실행하기 위해 호출, 일종의 소프트웨어 인터럽트. >> 시스템 호출이 처리되는 방식은 하드웨어 인터럽트 처리 방식과 유사.
운영체제의 핵심 서비스
프로세스 관리 | 프로세스 == 실행중인 프로그램. 수많은 프로세스들이 동시에 실행되고 있는데 이걸 관리해줌. 동시다발적으로 생성/ 실행/ 삭제되는 다양한 프로세스를 일목요연하게 관리해줌(프로세스와 스레드, 프로세스 동기화, 교착상태 해결 등등) |
운영체제의 자원 접근 및 할당 | - CPU (CPU스케줄링: 어떤 프로세스를 먼저, 얼마나 오래 실행할지) - 메모리 (페이징, 스와핑 등등) - 입출력장치 (인처럽트 서비스 루틴) |
파일 시스템 관리 | - 관련된 정보를 파일이라는 단위로 저장 장치에 보관. - 파일들을 묶에 폴더(디렉토리) 단위로 저장장치에 보관. |
728x90
반응형
'컴퓨터 구조' 카테고리의 다른 글
컴퓨터 구조 ) 프로세스 상태와 계층 구조에 대해 알아보자. (0) | 2024.02.23 |
---|---|
컴퓨터 구조 ) 프로세스 개요 (0) | 2024.02.22 |
컴퓨터 구조 ) 운영체제란 무엇인가? (0) | 2024.02.20 |
컴퓨터 구조 ) 메모리와 캐시 메모리 - Ram의 특징과 종류, 메모리의 주소 공간, 캐시 메모리에 대해 알아보자. (0) | 2024.02.08 |
컴퓨터 구조 ) 명령어 집합 구조, CISC와 RISC에 대해 알아보자. (1) | 2024.02.08 |