일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 운영체제
- 가상 메모리
- 페이지 부재율
- 스케줄링
- 단편화
- 백준
- ALU
- Oracle
- concurrency
- 추상화
- 세마포어
- 페이지 대치
- 페이징
- Algorithm
- 알고리즘
- 스레드
- 우선순위
- 트랩
- BOJ
- 인터럽트
- 컴퓨터구조
- 기아 상태
- mutex
- PYTHON
- 동기화
- 부동소수점
- 교착상태
- mips
- fork()
- 프로세스
- Today
- Total
목록전체 글 (122)
봉황대 in CS
* 본 글은 '운영체제(Operating System: Concepts) 9th edition'의 내용과 2021학년도 1학기에 수강한 '운영체제' 과목 강의 내용을 함께 정리하여 작성하였습니다. 협력적 프로세스(Cooperating Process)가 병행 또는 병렬로 실행될 때 여러 프로세스가 공유하는 데이터의 무결성에 어떤 문제가 일어나는가? * 협력적 프로세스 : 시스템 내에서 실행 주인 다른 프로세스의 실행에 영향을 주거나 받는 프로세스 생산자-소비자 문제를 다시 보자. * 생산자 프로세스 : 정보를 생산하는 프로세스 * 소비자 프로세스 : 생산자 프로세스가 생산한 정보를 소비하는 프로세스 생산자와 소비자 프로세스들이 병행으로 실행되도록 하기 위해서 공유하는 메모리 영역에 원형 공유 버퍼를 생성..
* 본 글은 '운영체제(Operating System: Concepts) 9th edition'의 내용과 2021학년도 1학기에 수강한 '운영체제' 과목 강의 내용을 함께 정리하여 작성하였습니다. 실시간 시스템 (Real-Time System) 실시간 시스템에서는 작업 수행이 요청되었을 때 이를 제한된 시간 안에 처리하여 결과를 내주어야 한다. 이는 연성 실시간 시스템과 경성 실시간 시스템으로 분류할 수 있다. 1. 연성 실시간 시스템 (Soft Real-Time System) 실시간 프로세스가 실시간이 아닌 프로세스들에 우선권을 가진다는 것만 보장하며, 이것이 스케줄 되는 시점에 관해서는 아무런 보장이 없다. (마감 시간(deadline)을 만족하는 것이 확률로만 존재) 2. 경성 실시간 시스템 (Ha..
* 본 글은 '운영체제(Operating System: Concepts) 9th edition'의 내용과 2021학년도 1학기에 수강한 '운영체제' 과목 강의 내용을 함께 정리하여 작성하였습니다. 지금까지는 단일 처리기 시스템(처리기(CPU)가 하나 있는 시스템)에서의 CPU 스케줄링에 대하여 알아보았다. 한 시스템 내에서 여러 개의 CPU가 사용 가능하다면 어떤 것들이 변화되며, 어떤 문제들이 추가적으로 발생할까? 다중 처리기 스케줄링 (Multiple-Processor Scheduling) 다중 처리기에서는 부하 공유(load sharing)가 가능해진다. * 부하 공유 : 쉬고 있는 처리기에 할 일을 부여하는 것. 한 처리기는 계속 일하고 나머지는 놀고 있는 상태가 되어서는 안 된다. 하지만 이에 ..
* 본 글은 '운영체제(Operating System: Concepts) 9th edition'의 내용과 2021학년도 1학기에 수강한 '운영체제' 과목 강의 내용을 함께 정리하여 작성하였습니다. 스레드를 지원하는 운영체제에서는 프로세스를 스케줄 하는 것이 아니라, 실질적으로는 스레드를 스케줄 한다. 하지만 "프로세스 스케줄링"과 "스레드 스케줄링"의 용어는 상호 교환적으로 사용된다. 따라서 해당 책에서는 일반적인 스케줄링 개념을 설명할 경우 "프로세스 스케줄링"을 사용하고, 스레드에 국한된 개념을 가리키는 경우에는 "스레드 스케줄링"이라는 용어를 사용하고 있다. 스레드 스케줄링 앞서 스레드의 2가지 형태, 사용자 스레드와 커널 스레드에 대하여 알아보았다. 1. 사용자 스레드 : 응용 프로그램 내의 라이..
* 본 글은 '운영체제(Operating System: Concepts) 9th edition'의 내용과 2021학년도 1학기에 수강한 '운영체제' 과목 강의 내용을 함께 정리하여 작성하였습니다. 선점(preemption) 선점은 현재 실행 중인 프로세스로부터 CPU를 회수하여 다른 프로세스에게 할당하는 것을 말한다. 시분할 시스템에서 타임 슬라이스 소진 시 우선순위가 더 높은 프로세스에게 CPU를 할당하는 것으로 일어난다. 동적 우선순위 프로세스의 실행 중에는 시스템의 성능, 프로세스의 특성 등을 고려하여 우선순위를 재조정하게 되고 결과적으로 스케줄링에 의해 선점이 발생한다. 전체적인 시스템 성능의 향상 및 프로세스의 속성을 고려하여 커널의 여러 곳에서 우선순위를 조정하는 원칙과 기법이 필요하다. 동적..
* 본 글은 '운영체제(Operating System: Concepts) 9th edition'의 내용과 2021학년도 1학기에 수강한 '운영체제' 과목 강의 내용을 함께 정리하여 작성하였습니다. 스케줄링 알고리즘 라운드 로빈 스케줄링 (Round-Robin Scheduling) RR 스케줄링이라고도 한다. FIFO 스케줄링에서 선점이 추가된 스케줄링이라고 볼 수 있다. 구현 : 원형 큐(circular queue) 준비 큐를 원형 큐로 간주하고, 새로운 프로세스들은 원형 큐의 꼬리에 추가된다. 이 큐에서 순환식으로 한 프로세스에게 작은 단위의 시간량(타임 퀀텀, time quantum)만큼씩 CPU를 할당한다. * 타임 퀀텀은 타임 슬라이스와 같은 개념이다. (10ms ~ 100ms) 즉, 실행 상태의..
문제 7569번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N과 쌓아올려지는 상자의 수를 나타내는 H가 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M ≤ 100, 2 ≤ N ≤ 100, www.acmicpc.net N×M×H 크기의 상자에 토마토들이 보관된다. (1칸 1토마토) (입력으로 주어지는 값) 1 : 익은 토마토 / 0 : 익지 않은 토마토 / -1 : 토마토가 들어있지 않음 보관 후 하루가 지나면 익은 토마토들의 인접한 곳에 있는 익지 않은 토마토들은 익은 토마토의 영향을 받아 익게 된다. 인접한 곳 : 위, 아래, 왼쪽, 오른쪽, 앞, 뒤 (총 6 방향) 창고에 보관된 토마토가 모두 익을 때까지 최소 며칠이 걸리는지를 계산 구하는 ..
* 본 글은 '운영체제(Operating System: Concepts) 9th edition'의 내용과 2021학년도 1학기에 수강한 '운영체제' 과목 강의 내용을 함께 정리하여 작성하였습니다. 비선점 스케줄링 (Non-preemptive Scheduling) 프로세스가 종료하거나 대기 상태로 전환해 CPU를 자진 반납할 때까지 CPU에 의한 실행을 보장해주는 스케줄링 작업 실행 시간 전체 또는 한 번의 CPU 배당에 대해 적용된다. 선입 선처리 스케줄링 (FCFS) 최단 작업 우선 스케줄링 (SJF) - 선점형으로도 가능 우선순위 스케줄링 - 선점형으로도 가능 선점 스케줄링 (Preemptive Scheduling) (1) 시분할 시스템에서 타음 슬라이스가 소진되었거나, (2) 인터럽트 또는 시스템 ..