일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Error
- 노말틱
- mysql
- shell
- Bandit
- nomaltic
- 칼리
- Bitnami
- virtualbox
- 리눅스 기초
- kali linux
- VDI
- Virtual Box
- 칼리 리눅스
- nomaltic place
- Linux
- Vitual Disk Image
- MariaDB
- 리눅스
- 기초
- kali
- 보안
- 네트워크
- Web shell
- Normaltic
- Today
- Total
게으른 개발자
1강. Introduction to Operating Systems 본문
운영체제는 컴퓨터 하드웨어 윗단에 설치되는 소프트웨어이다.

좁은 의미의 운영체제 => 커널
넓은 의미의 운영체제 => 커널 + 시스템 유틸리티
운영체제의 목적은 주어진 자원을 효율적으로 관리하는 것이다. 그러나 너무 효율적으로만 자원을 관리하게 되면 자원 분배에 대한 형평성이 침해될 수 있으므로 운영체제는 형평성도 고려해서 자원을 분배해야 한다.

운영체제는 사용자에게 편리성을 제공해야 한다.




다중 사용자일 경우에 [보안 + 자원분배]를 더 신경 써줘야 한다.

- batch processing은 interactive 하지 못함.

시분할 방식은 interactive(상호작용 하는, 대화형의) 가능! 그러나 batch processing은 불가능하다.

Time sharing => 범용 컴퓨터
Realtime OS => 정교한 컴퓨팅이 필요한 부분 (ex: 원자로 제어, 미사일, 반도체 장비, 로봇 제어) --> 데드라인을 반드시 지켜야 하는 운영체제
Hard realtime system : 원자로 제어, 미사일, 반도체 장비, 로봇 제어
Soft realtime system : 데드라인은 있지만 크게 문제가 되지 않는 분야 -> 영화 재생 등등..
최근 실시간성을 필요로 하는 응용프로그램이 늘어남에 따라서 범용운영체제(시분할)에서 해당 애플리케이션을 어떻게 지원해야 할지 이슈가 되고 있다.

- Multitasking : cpu에서는 매 순간 하나의 작업만 실행. 하나의 프로그램이 끝나기 전에 다른 프로그램도 실행됨. --> 사용자 입장에서는 동시에 돌아가고 있는 것처럼 느낌.
- Multiprogramming : 메모리에 여러 프로그램을 올라가 있음. ==> 메모리 측면을 강조
- Time sharing : 시간을 분할 ( 시분할) ===> cpu 강조

유닉스를 만들기 위해서 c언어를 만듦. 안드로이드도 리눅스 커널을 사용한다.


본 게시물은 kocw 반효경 교수님 강의를 참고하였습니다.
'cs > 운영체제' 카테고리의 다른 글
3강-2. Process2 (0) | 2023.11.03 |
---|---|
3강-1. Process1 (1) | 2023.11.03 |
2강-2. System Structure & Program Execution 2 (0) | 2023.11.02 |
2강-1. System Structure & Program Execution 1 (1) | 2023.11.02 |
0강. 운영체제 개요 (0) | 2023.11.01 |