락킹과 세마포어의 차이점이 뭔가요?

seele911의 이미지

세마포어는 크리티컬 섹션을 방지하기 위해서? 사용하는것이고
락킹같은 경우도 a,b 2개의 프로세스가 하나의 파일에 접근해서 쓸때 만약 a가 접근해서 이미 파일을 쓰고있으면 b가 쓰지 못하게 락을 거는게 락킹이라고 알고있습니다.
그런데... 결국 이 둘은 같은건가요?

iamt의 이미지

세마포어는 P,V로만 조작가능한 변수이고, 락킹은 싱크로나이제이션을 위해 세마포어나 뮤택스를 사용하는것

---------------------------------------------------------------------------------
C(++)과 php 펄등을 공부하고있습니다.
반갑습니다! 리눅스 :-)

seele911의 이미지


헷갈렸었는데
답변 감사합니다~ ^^

fm100의 이미지

세마포어는 critical section에 동시에 접근할 수 있는 쓰레드 수를 정의할 수 있습니다.
세마포어 값이 1인게 lock이라고 보시면 됩니다.

=================================================
Do the python !
=================================================

=================================================
Do the python !
=================================================