일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 프로그래머스
- Til
- Android
- 코틀린
- SQL
- 알고리즘
- 정처기
- 오블완
- select
- groupby
- 인프런
- 혼공챌린지
- CS
- 자료구조
- join
- 혼공파
- 스터디
- 자바
- Kotlin
- 코테
- java
- 카카오코테
- 티스토리챌린지
- 혼공단
- 기술면접
- MySQL
- doitandroid
- 안드로이드
- 정보처리기사
- 안드로이드스튜디오
- Today
- Total
목록OS (2)
Welcome! Everything is fine.
동시성과 병렬성멀티 프로세스와 멀티 스레드 개념을 잘 이해하려면 동시성과 병렬성에 대해 알아야 한다.동시성(concurrency) : 하나의 코어(싱글 코어)에서 여러 작업을 번갈아 가면서 처리하는 방식CPU는 한 번에 하나의 작업만 처리할 수 있어서 여러 작업을 돌아가며 처리 → Context Switching Context Switching의 비용은 프로세스 > 스레드이다. 스레드는 stack 영역을 제외한 모든 영역을 공유하기 때문!병렬성(parallelism) : CPU가 여러 개(멀티코어) 있어 각 CPU에서 각 작업을 동시에 처리하는 방식멀티 프로세스응용 프로그램 하나를 여러 프로세스로 구성하는 것을 의미장점 : 한 프로세스가 죽어도 다른 프로세스에 영향을 주지 않아 안정적단점 : 시간과 메..
하드 드라이브에 보관되어있던 프로그램을 실행시키면 프로그램이 메모리에 올라온다. 이때 프로그램은 실행 중인 프로그램, 즉 프로세스가 된다. 이렇게 메모리에 올라온 프로세스를 CPU에서 가져다가 사용하는 것이다. 다시 말하자면, 프로세스들이 메모리에 저장되어있다가 하나씩 CPU로 가서 실행된다는 것이다. 이때, 어떤 프로세스에 CPU와 메모리를 할당할지 결정해주는 것이 스케줄러의 역할이다. 스케줄러의 종류에는 장기 스케줄러, 단기 스케줄러, 중기 스케줄러 3가지가 있다. 장기 스케줄러(Long-term Scheduler) = 작업 스케줄러(Job Scheduler) 디스크와 메모리 사이의 스케줄링을 관리함. 현대 운영체제에서는 장기 스케줄러 없이 바로 준비큐에 넣어줌. 어떤 프로세스를 준비큐에 삽입할지 결..