티스토리 뷰
● 운영체제 도입
- 운영체제는 다양한 곳에서 많이 쓰인다.
- 스마트폰에는 안드로이드나 iOS, PC에는 window 혹은 Mac, 대형 컴퓨터나 서버용에는 unix, linux 등이 사용된다.
- 내비게이션, 세탁기, 스마트워치 등에는 임베디드 운영체제가 들어간다.
Q. 컴퓨터는 반드시 운영체제가 있어야만 동작할까?
A.
- 없어도 동작한다.
- 그러나 운영체제가 없으면 처음 컴퓨터를 설계한 그대로만 동작할 뿐 사용자가 원하는 다른 기능을 추가할 수 없다.
(유연하지 못 하다는 의미)
ex)
- 예전의 유선 전화기는 오직 통화 기능만 있을 뿐 다른 기능을 추가할 수 없다.(운영체제가 없으니까)
- 그러나 운영체제가 있는 스마트폰은 통화는 물론 음악 감상, 게임 등 사용자가 원하는 다른 기능을 추가할 수 있다.
● 운영체제가 하는 일(운영체제가 관리하는 것들)
1. 프로세스 관리 cf) 프로세스는 간단히 말해 하나의 프로그램이라고 생각하면 된다.
- PC를 이용해 음악을 들으면서 인터넷을 하거나 게임을 하는 것은 매우 흔한 일이다.
- 이는 음악, 인터넷, 게임이 전부 동시에 실행되기에 가능한 것이다.
- 만약 게임을 메인으로 하고 있으면 음악 감상과 인터넷은 백드라운드에서 계속 실행되고 있는 상태이다.
- 운영체제가 이러한 프로세스를 관리하지 않는다면 브라우저가 CPU를 독차지해 게임이 실행되지 않거나, 게임이 CPU를 독차지해 음악이 실행되지 않는 일이 발생할 수 있다.
2. 메모리 관리
- 모든 프로그램은 메모리에 올라와서 동작한다.
- 즉, 여러 프로그램을 동시에 실행시키는 운영체제는 메모리 위에서 이러한 여러 개의 프로그램을 관리하는 것이다.
3. 하드웨어 관리
- 운영체제는 하드웨어에 대한 사용자의 직접적인 접근을 막는다.
ex)
- 사용자가 하드디스크에 어떤 데이터를 저장하고 싶을 때 하드디스크의 특정 영역에 바로 저장하지 못하게 하고 운영체제가 적절한 위치를 판단해서 해당 위치에 저장한다.(운영체제가 대신 저장해주는 것이다.)
- 이는 하드디스크의 특정 영역에 다른 중요한 데이터가 있을 수도 있고 혹은 사용자가 악의적으로 공격 할 수도 있기 때문이다.
4. 파일 시스템 관리
- 하드디스크에 저장돼 있는 수 많은 파일들의 효율적인 저장과 관리를 해준다.
'CS > 운영체제' 카테고리의 다른 글
#6 유니프로그래밍, 멀티프로그래밍, 멀티프로세싱 (0) | 2023.02.21 |
---|---|
#5 프로그램과 프로세스 (0) | 2023.02.18 |
#4 컴퓨터 부팅과정 & 인터럽트 (0) | 2023.02.17 |
#3 컴퓨터 하드웨어와 구조(feat 폰 노이만 구조) (0) | 2023.02.12 |
#2 운영체제 구조 with kernel (0) | 2023.02.09 |
- Total
- Today
- Yesterday
- 운영체제
- 빅데이터
- node.js
- 프로세스
- Java8
- java
- DART
- Advanced Stream
- 코딩테스트
- spring
- Spring Boot
- Phaser3
- 자료구조
- nosql
- MongoDB
- SpringBoot
- 알고리즘
- jpa
- Stream
- db
- Phaser
- 코테
- git
- 빅데이터 분석기사
- 메모리
- MySQL
- OS
- API
- 프로그래머스
- SQL
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |