티스토리 뷰

경쟁 상태 (Race condition)


공학 분야에서 경쟁 상태(race condition)란 둘 이상의 입력 또는 조작이 동시에 이루어지는 상태를 말한다. 

이런 상태에서는 정상적인 결과가 나오지 않게 될 위험이 있는데 이를 경쟁 위험이라고 한다.

-> 공유 자원에 대해 여러 개의 프로세스가 동시에 접근을 시도하는 상태, 동시에 접근하면 A프로세스가 쓴 값을 바로 이어서 B프로세스가 덮어씌우는 상황이 나타날 수 있다. 이를 방지하기 위해서는 상호배제가 필요하다

다중 프로그래밍

다중 프로그래밍(Multi-programming)이란 CPU 작업과 입출력 작업을 병행하는 것이다. CPU 이용과 처리량을 향상시킬 수 있다.


프로세스 테이블

프로세스

프로세스 -> 프로세스 테이블에서 한 엔트리, 독립적인 주소 공간 차지



메모리 주소는 컴퓨터 메모리의 물리 위치이며 데이터가 저장되는 위치를 가리킨다. 이러한 주소는 마을의 거리 주소와 비슷하다. 집주소에 빗대어 볼 때, 주소 공간은 이웃, 마을, 도시, 국가와 같은 위치의 지역이 될 수 있다. 두 개의 주소가 숫자로 볼 때는 같지만 소속된 주소 공간이 다른 경우에는 다른 위치를 일컫는다. 이를테면, 어느 한 사람의 집 주소가 "32번지"일 때, 다른 마을이나 국가에 사는 다른 사람의 집 주소도 "32번지"일 수 있다.


프로세스 상태

레디상태 -> 씨피유가 다른 프로세스를 실행중이라 현재 프로세스는 레디(실행대기)상태 os스케쥴러가 한 프로세스에 할당한 시간이 지나면

그 프로세스를 레디상태로 만든다.

블락 -> 씨피유가 프로세스를 실행하다가 I/O같은 시간이 많이 필요한 작업이 실행 됬을때 CPU가 놀지 않게끔 다른 프로세스를 실행하게 하기위해

현재 프로세스는 블락됨. 나중에 또 다른 프로세스를 실행시키고 있던 씨피유는 I/O작업이 끝났을때 생성되는 인터럽트 신호에 의해 다시 아까의 프로세스로

돌아가서 아직 실행시키지 못한 코드를 마저 실행함.


PCB란 process control block(프로세스 테이블)



프로세스 당 할당되는 주소 공간





댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
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
글 보관함