파일 입출력시
글쓴이: kang0203 / 작성시간: 금, 2003/02/07 - 3:14오후
안녕하세요.
간단한 파일 입출력을 할때 궁금한 점이 있어서여..
만약 한 파일에 대해 open을 하고 write나 read를 할때
다른 사용자도 같이 write나 read를 할 경우 문제가 되는 점이 있나여..
동시에 write나 read를 한다 해도 커널이 알아서 먼저 온 프로세스를 실행시키고
다른 프로세스는 대기 시키지 않나 해서여.. 이게 동기화문제져?
만약 문제가 있다면 어떻게 처리를 해주어야 하는지여??
질문을 하고보니 먼 말인지 ..... 그럼 미리 감사합니다..... 수고하세요..^^
Forums:
한 파일에 관해 두 사용자 모두 read-write 권한을 갖고 있다면
한 파일에 관해 두 사용자 모두 read-write 권한을 갖고 있다면
당연히 문제가 발생할 수 있습니다.
A 가 write 하고 난 다음에 B 가 write 해 버리면
당연히 A 가 나중에 다시 그 파일이 read 하면 자신이 작성한 내용이 아니겠죠
이럴 때는 lock 을 걸어 주어 해결할 수 있습니다.
lockf(3), flock(2) 을 보십시여
현재 많이 사용되는 os 는 대부분 time - sharing 메카니즘을 갖고 있습니다.
따라서 먼저 시작한 프로세스가 반드시 먼저 끝난다는 보장도 없습니다.
즉 하나의 프로세스가 다 끝나려면 여러번의 CPU time quantum 을 받아야 합니다.
댓글 달기