일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 해시맵
- 알고리즘
- 완전탐색
- MySQL
- 이분탐색
- 재귀
- domain model
- 프로그래머스
- Recursion
- lcap
- algorithm
- 멘딕스
- 스택
- 자바
- 백트래킹
- git
- 가중치없는그래프
- Sort
- SQL
- 집합
- 정렬
- microflow
- 자료구조
- 매개변수 탐색
- dfs
- 반효경교수님
- 그래프
- Bruteforce
- 트리
- Mendix
- Today
- Total
mondegreen
(230502) 운영체제 2강. Introduction to Operating Systems 본문
운영체제의 정의
협의의 운영체제(커널)
운영체제의 핵심 부분으로 PC부팅 후 계속 메모리에 상주하는 부분
광의의 운영체제
커널 뿐 아니라 각종 주변 시스템 유틸리티를 포함한 개념으로서 커널을 포함하여 파일 복사 소프트웨어와 같이 가진 기본적인 기능을 가진 부가적인 프로그램(즉, 최소한의 유틸리티)을 포함한 것을 말한다. 메모리에 상주하지 않으며 독립적인 프로그램들을 말한다.
운영체제의 목적
컴퓨터 시스템의 자원을 효율적으로 관리하는 것이 목적인데 프로세서, 기억장치, 입출력 장치와 같은 하드웨어 뿐만 아니라 프로세스, 파일, 메세지를 관리하는 소프트웨어 자원을 효율적으로 관리한다. 이와 같은 자원들이 최대한의 성능을 낼 수 있도록 형평성 있게 분배한다.
운영체제의 분류
동시작업 가능 여부: 단일 작업 / 다중 작업
- 단일 작업만 가능한 운영체제: MS-DOS, 전화만 가능한 휴대폰, 엘레베이터 운영체제 -> 특수 목적을 위한 운영체제
- 다중 작업 가능한 운영체제: UNIX, MS Windows에서는 한 명령의 수행이 끝나기 전에 다른 명령이나 프로그램을 수행할 수 없음
사용자의 수: 단일 사용자 / 다중 사용자
처리 방식: 일괄처리(batch processing) / 시분할(time sharing) / 실시간(realtime OS)
- 일괄처리: 작업 요청의 일정량을 모아서 한꺼번에 처리하며 작업이 완전히 종료될 때까지 기다려야 함
- 시분할: 여러 작업을 수행할 때 컴퓨터 처리 능력을 일정한 시간 단위로 분할하여 사용하며 일괄처리 시스템에 비해 짧은 응답시간을 가진다. 현대 운영체제의 처리 방식으로서 입력이 들어오면 바로 결과가 출력되는 interactive한 방식이다.
- 실시간: 정해진 시간 안에 어떠한 일이 반드시 종료됨이 보장되어야 하는 실시간 시스템을 위한 OS로서 (경성) 원자로, 공장 제어, 미사일 제어, 반도체 장비, 로보트 제어 (연성) 영화상영 등이 예시이다.
운영체제 예시
유닉스: 대형 컴퓨터를 위해 만들어졌으며 멀티 태스킹이 가능하다. 코드의 대부분을 C언어로 작성했으며 높은 이식성을 가진다. 최소한의 커널 구조를 가지며 소스코드가 공개되어 있다. 이 운영체제를 기반으로 Linux가 개발되었다.
DOS(DIsk Operating System): MS사에서 IBM-PC를 위해 개발하였으며 단일 사용자용 운영체제, 메모리 관리 능력의 한계가 있다(주기억장치: 640KB)
MS 윈도우즈: MS사의 다중 작업용 GUI 기반 운영체제로서 개인용 컴퓨터를 위해 개발되었다.
운영체제의 구조
CPU 스케줄링: 조금씩 번갈아가며 프로그램에 배정하는 것이 CPU를 효율적으로 사용하더라 -> CPU와 메모리, 디스크, 프로그램 간의 속도차이가 상당함에 따라 시간 차를 완충하고 자원을 효율적으로 관리하는 효과가 있다.
DISK 스케줄링: 헤드의 움직임을 최소화하기 위해 수행
참고.
C언어: 운영체제를 만들기 위해 고안되었으며 고급어로서 기계어와도 사람과도 가까운 언어이다.
'Computer Science > 운영체제' 카테고리의 다른 글
(230513) 운영체제 4강. System Structure & Program Execution2 (1) | 2023.05.13 |
---|---|
(230511) 운영체제 3강. System Struncture & Program Execution 1 (1) | 2023.05.13 |
(230418) 운영체제 1강. 강의 소개 (0) | 2023.04.18 |