[운영체제] Process Synchronization
Councurrency Problem 여러 프로세스가 동시에 공유 자원에 접근하면 데이터 불일치가 발생할 수 있다. 이러한 상황을 방지하기 위해서 질서 있는 실행(orderly execution)이 필요하다.
Councurrency Problem 여러 프로세스가 동시에 공유 자원에 접근하면 데이터 불일치가 발생할 수 있다. 이러한 상황을 방지하기 위해서 질서 있는 실행(orderly execution)이 필요하다.
Cycle of CPU/IO Burst (CPU-I/O 버스트 주기) 프로세스 실행 흐름은 CPU Burst와 I/O 대기 시간의 반복으로 구성된다. CPU 버스트: CPU에서 실제로 실행되는 시간 e.g. 엑셀 정렬, 게임을 할 때 I/O 버스트: 디스크나 네트워크 등의 입출력을 기다리는 시간 e.g. 키보드나 마우스 입력, 네트워...
문제 2022 연세대학교 미래캠퍼스 슬기로운 코딩생활에 N명의 학생들이 응시했다. 이들 중 점수가 가장 높은 k명은 상을 받을 것이다. 이 때, 상을 받는 커트라인이 몇 점인지 구하라. 커트라인이란 상을 받는 사람들 중 점수가 가장 가장 낮은 사람의 점수를 말한다. 입력 첫째 줄에는 응시자의 수 N과 상을 ...
Motivation(동기) 애플리케이션 내에 실행되는 스레드 애플리케이션을 사용하는 여러 작업은 별도의 스레드로 구현할 수 있다. Update display 디스플레이 업데이트 Fetch data 데이터 가져오기 Spell checking 철자 검사 Answer a network request 네트워크 요청 응답 프로세스를 새로 만드는...
문제 인하대학교 컴퓨터공학과를 졸업하기 위해서는, 전공평점이 3.3 이상이거나 졸업고사를 통과해야 한다. 그런데 아뿔싸, 치훈이는 깜빡하고 졸업고사를 응시하지 않았다는 사실을 깨달았다! 치훈이의 전공평점을 계산해주는 프로그램을 작성해보자. 전공평점은 전공과목별 (학점 × 과목평점)의 합을 학점의 총합으로 나눈 값이다. 인하대학교 컴퓨터공학...
문제 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌을 때, 벌집의 중앙 1에서 N번 방까지 최소 개수의 방을 지나서 갈 때 몇 개의 방을 지나가는지(시작과 끝을 포함하여)를 계산하는 프로그램을 작성하시오...
문제 미국으로 유학간 동혁이는 세탁소를 운영하고 있다. 동혁이는 최근에 아르바이트로 고등학생 리암을 채용했다. 동혁이는 리암에게 실망했다. 리암은 거스름돈을 주는 것을 자꾸 실수한다. 심지어 $0.5달러를 줘야하는 경우에 거스름돈으로 $5달러를 주는것이다! 어쩔수 없이 뛰어난 코딩 실력을 발휘해 리암을 도와주는 프로그램을 작성하려고 하지...
문제 가로, 세로의 크기가 각각 100인 정사각형 모양의 흰색 도화지가 있다. 이 도화지 위에 가로, 세로의 크기가 각각 10인 정사각형 모양의 검은색 색종이를 색종이의 변과 도화지의 변이 평행하도록 붙인다. 이러한 방식으로 색종이를 한 장 또는 여러 장 붙인 후 색종이가 붙은 검은 영역의 넓이를 구하는 프로그램을 작성하시오. 예를 들...
Interprocess Communication 프로세스는 시스템 내에서 독립적이거나 협조적일 수 있다. 프로세스가 협동을 하는 이유 정보 공유 계산 속도 향상 분업(각각의 모듈이 독립적으로 실행해서 일을 분담) 편리 협조적인 프로세스는 프로세스 간 통신(IPC, interprocess communication)이 필요하다. IP...
1. 프로세스 생성 운영체제는 하나의 프로세스에서 다른 프로세스를 생성할 수 있도록 한다. 부모 프로세스(Parent Process): 새로운 프로세스를 생성하는 기존 프로세스 자식 프로세스(Child Process): 부모 프로세스에 의해 생성된 새로운 프로세스 프로세스들이 트리 구조를 형성하는 경우가 많다. 보통 프로세스 식별자에 의...