본문 바로가기

프로세스 관리2

운영체제 10장 - 프로세스 관리(7) : 읽기-쓰기 문제, 식사하는 철학자 문제 - 운영체제 10장- 프로세스 관리(7) : 읽기-쓰기 문제, 식사하는 철학자 문제 - 읽기 쓰기 문제는 공통 데이터베이스에 접근하는 문제를 다룬다. 서버에 데이터베이스가 존재하는데 다른 로컬 컴퓨터들이 데이터에 접근을 할 수 있다. 접근하는 사용자 중에는 Reader와 Writer가 존재한다. Reader는 데이터를 읽기만 하는 사용자이고 Writer는 데이터를 읽고 수정할 수 있는 사용자를 의미한다. 데이터베이스를 사용자들이 모두 공통 사용하므로 임계구역이라고 생각할 수 있다. 우리는 앞의 임계구역 문제를 해결하기 위해 동기화를 사용하였는데 상호배타를 만족시키기 만들어 한 번에 한 개의 프로세스만 접근이 가능하게 만들었다. 임계구역에 데이터를 접근하는 사용자에 접근 권한을 두어 동시에 접근을 할 수 없게.. 2017. 4. 22.
운영체제 8장 - 프로세스 관리(5) : 세마포(semaphore) - 운영체제 8장- 프로세스 관리(5) : 세마포(semaphore) - 프로세스/쓰레드 동기화는 여러 개의 프로세스/쓰레드가 공통으로 데이터에 접근하려고 할 때 발생하는 문제를 해결하는 방법이다. 동기화 부분은 스케줄링과 더불어 프로세스 관리에서 매우 중요한 부분을 차지한다. 세마포는 프로세스/쓰레드 동기화를 위한 도구 중 하나이다. 앞장에서 세마포의 원리에 대해서 알아보았는데 이번 장에서는 더욱 자세히 세마포에 대해 다루어보도록 하겠다. 쓰레드가 동작하는 공간에는 공통 데이터를 수정할 수 있는 임계구역이 존재한다. 쓰레드가 동작을 하면서 임계구역에 들어가게 되면 데이터를 수정할 수 있다. 쓰레드가 코드를 동작하는 도중에 acquire() 명령어가 실행되면 임계구역에 들어가라는 명령이므로 쓰레드가 임계구역.. 2017. 4. 19.