상호배제: 두 판 사이의 차이
IT 위키
편집 요약 없음 |
편집 요약 없음 |
||
(사용자 2명의 중간 판 2개는 보이지 않습니다) | |||
1번째 줄: | 1번째 줄: | ||
[[분류:운영체제]][[분류:일반 IT용어]] | |||
;Mutual Exclusion | ;Mutual Exclusion | ||
공유자원을 | 공유자원을 한 시점에 단지 하나의 프로세스만이 사용할 수 있도록 제어하는 매커니즘 | ||
== 원칙 == | |||
* 두 개 이상의 프로세스가 동시에 임계 영역에 있어선 안됨 | |||
* 임계영역 밖에 있는 프로세스가 다른 프로세스의 진입을 막아선 안됨 | |||
* 프로세스의 상대적인 속도에 대해선 어떠한 가정도 하지 않음 | |||
== 하드웨어적 방법 == | |||
* 인터럽트 사용금지: 공유 자원이 변경되는 동안 인터럽트 비허용 | |||
* Test and Set: 워드에 대해 검사하고 검사할수 있는 명령 제공 | |||
* Swap: 두 워드간 내용을 교환할수 있는 명령 제공 | |||
== 소프트웨어적 방법 == | |||
* 데커 알고리즘 | |||
* 피터슨 알고리즘 | |||
* 베이커리 알고리즘 | |||
* 세마포어 | |||
== 같이 보기 == | == 같이 보기 == | ||
* [[교착 상태|교착 상태(Deadlock)]]: 상호배제의 잘못된 사용으로 필요한 프로세스에게 자원이 공유되지 못해 자원을 무한정 기다리는 상태 | * [[교착 상태|교착 상태(Deadlock)]]: 상호배제의 잘못된 사용으로 필요한 프로세스에게 자원이 공유되지 못해 자원을 무한정 기다리는 상태 |
2019년 7월 4일 (목) 09:47 기준 최신판
- Mutual Exclusion
공유자원을 한 시점에 단지 하나의 프로세스만이 사용할 수 있도록 제어하는 매커니즘
1 원칙[편집 | 원본 편집]
- 두 개 이상의 프로세스가 동시에 임계 영역에 있어선 안됨
- 임계영역 밖에 있는 프로세스가 다른 프로세스의 진입을 막아선 안됨
- 프로세스의 상대적인 속도에 대해선 어떠한 가정도 하지 않음
2 하드웨어적 방법[편집 | 원본 편집]
- 인터럽트 사용금지: 공유 자원이 변경되는 동안 인터럽트 비허용
- Test and Set: 워드에 대해 검사하고 검사할수 있는 명령 제공
- Swap: 두 워드간 내용을 교환할수 있는 명령 제공
3 소프트웨어적 방법[편집 | 원본 편집]
- 데커 알고리즘
- 피터슨 알고리즘
- 베이커리 알고리즘
- 세마포어
4 같이 보기[편집 | 원본 편집]
- 교착 상태(Deadlock): 상호배제의 잘못된 사용으로 필요한 프로세스에게 자원이 공유되지 못해 자원을 무한정 기다리는 상태