본문 바로가기

Studying/Operating System

01. 운영체제 - 도입

운영체제: 컴퓨터 시스템의 자원을 효율적으로 관리(프로세서, 기억장치, 입출력 장치)


CPU를 어떻게 할당?

얼마만큼 할당?


메모리 공간을 어떻게 할당?



---



1.정의: 운영체제는 하드웨어 바로 위에 설치되는 소프트웨어

가. 좁은 의미: 커널(메모리에 항상 상주하는 부분)

나. 널은 의미: 커널을 포함한 주변 시스템을 다루는 유틸리티를 포함


2. 목적

가. 하드웨어(컴퓨터 시스템의 자원)를 효율적으로 관리(하드웨어 자원과 소프트웨어 자원)

나. 컴퓨터 시스템을 편리하게 사용하게 해주는 것


3. 분류

가. 동시 작업 가능

1) 단일 작업(single tasking)

2) 다중 작업(multi tasking): 현대의 대부분 OS

나. 사용자의 수 (계정을 만들어서 동시 접속 가능 여부)

1) 단일 사용자(single user): MS-DOS, MS WIndows

2) 다중 사용자(multi user): UNIX, NT server

다. 처리 방식

1) 일괄 처리(batch sharing): 작업을 모아서 한꺼번에 처리

2) 시분할(time sharing): 여러 작업이 수행될 때, 작은 시간 단위로 나누어 처리

3) 실시간(Realtime OS): 데드라인이 있어 정해진 시간 내에 반드시 결과가 나와야 함


4. 용어

가. Multitasking: 하나의 프로그램이 끝나기 전에 다른 프로그램이 실행하는 것

나. Multiprogramming: 메모리에 여러 프로그램이 동시에 올라가는 것 (메모리를 강조)

다. Time sharing: 시간을 공유해서 (CPU를 강조)

라. Multiprocess

-> 유사한 용어

마. Multiprocessor: 하나의 컴퓨터에 CPU가 여러개 붙어있는 경우


5. 예

가. 유닉스(UNIX): 대형 컴퓨터를 목적으로 만듦(서버)

1. 멀티테스킹

2. 여러 사용자

3. 어셈블리어로 작업하니 복잡해서 -> 새로운 언어(C)를 만듦

4. 커널의 크기를 작게 함 -> 확장성이 높음

나. MS: PC-> 단일 사용자, 단일 프로그램을 목적으로 처음 만듦

1. DOS(Disk Operating System)

2. MS Windows


6. 구조(개괄)

가. CPU: 누구한테 CPU를 줄까? -> CPU 스케쥴링

나. Disk: 디스크에 파일을 어떻게 보관할까? -> 파일 관리

다. Memory: 한정된 메모리를 어떻게 나눌까? -> 메모리 관리

라. I/O device: 각기 다른 입출력장치와 컴퓨터 간에 어떻게 정보를 주고 받을까? -> 입출력 관리

마. 프로세스 관리: 자원 할당 반납

바.: 그외: 보호, 네트워크, 명령어 해석기 등

'Studying > Operating System' 카테고리의 다른 글

04. Process Management (1/2)  (0) 2018.05.20
03. Process (2/3), (3/3)  (0) 2018.05.20
03. Process (1/3)  (0) 2018.05.19
02. System Structure & Program Execution (2/2)  (0) 2018.05.19
02. System Structure & Program Execution (1/2)  (0) 2018.05.16