CS/운영체제
[운영체제] ch01. Introduction to Operating Systems
rngPwns
2025. 4. 21. 08:56
운영체제 (Operating System, OS) 란 무엇인가?
- 컴퓨터 하드웨어 바로 위에 설치, 사용자 및 다른 모든 계층 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층
- 협의의 운영체제(커널) : 운영체제의 핵심부분. 메모리에 상주하는 부분
- 광의의 운영체제 : 커널뿐 아니라 각종 주변 시스템 유틸리티 포함
운영체제의 목적
- 컴퓨터 시스템을 편리하게 사용할 수 있는 환경 제공
- 운영체제는 동시 사용자/ 프로그램이 각각 독자적 컴퓨터에서 수행되는 것 같은 환상 제공.
- 하드웨어 직접 다루는 복잡한 부분을 운체가 대행
- 컴퓨터 시스템 자원을 효율적으로 관리
- 프로세서, 기억장치, 입출력장치 등의 효율적 관리
- 사용자간 형평성있는 자원분배
- 주어진 자원으로 최대성능
- 사용자 및 운영체제 자신의 보호
- 프로세스, 파일, 메시지 관리
- 프로세서, 기억장치, 입출력장치 등의 효율적 관리
운영체제의 분류
동시 작업 가능 여부
- 단일작업(single tasking)
- 한 번에 하나의 작업만 처리
- ex) MS-DOS 프롬프트 상에서는 한 명령의 수행 끝나기 전에 다른 명령 수행시킬 수 X
- 한 번에 하나의 작업만 처리
- 다중작업(multitasking)
- 동시에 2개 이상의 작업 처리
- ex) UNIX, MS Windows 등에서는 한 명령의 수행이 끝나기 전에 다른 명령 or 프로그램 수행 가능.
- 동시에 2개 이상의 작업 처리
사용자의 수
- 단일 사용자(single user) ex) MS-DOS, MS Windows
- 다중사용자(multi user) ex) UNIX, NT server
처리 방식
- 일괄처리(batch processing)
- 작업요청 일정량 모아 한번에 처리, 작업이 완전 종료될때까지 기다려야 함
- ex. 초기 punch card 처리시스템
- 작업요청 일정량 모아 한번에 처리, 작업이 완전 종료될때까지 기다려야 함
- 시분할(time sharing)
- 여러작업 수행할 때 컴퓨터 처리능력 일정한 시간단위로 분할하여 사용
- 일괄 처리 시스템에 비해 짧은 응답시간을 가짐 ex) UNUIX, LINUX
- interactive한 방식 - 빠르기 때문에 A,B 모두 바로 반응하는 것처럼 보임
- 각 사용자가 컴퓨터로부터 서비스를 제공받는 시간 숫자로 표시 (A: 1,4,7... / B :2,5,8.../C : 3,6,9...)
- 실시간(Real time OS - RTOS)
- 정해진 시간 안에 어떤 일이 반드시 보장 필요한 실시간 시스템을 위한 OS ex) 원자로, 미사일 제어 , 반도체장비, 로봇제어
- 개념확장
- 경성 실시간 시스템(hard realtime system) : 당장 안 되면 큰일
- 연성 실시간 시스템(연성 실시간 시스템) : 답답하지만,, 큰 일이 나지는 x . 유연한 os
용어
Multitasking
multiprogramming 여러 프로그램이 메모리에 올라가 있음 강조(컴퓨터관점)
time sharing cpu 시간 분할하여 나눠쓴다는 의미 강조 : a-1 b-2 c-3 ...
multiprocess
- 구분 : 위 용어들은 컴퓨터에서 여러작업 함꼐 수행 뜻
mulitprocessor : 하나의 컴 안에 cpu 여러개 붙어있음 의미
- processor : cpu
multicore : cpu chip하나, 실행시킬 수 있는 조그만 processor 여러개 내장.