예를 들어 c언어로 파일 입출력을 하는 프로그램을 작성할때, open, read, write같은 시스템콜들을 사용하는데 왜 이런걸 쓰는거에요??
시스템콜을 쓰는 이유가 먼가요?
초보자에요(211.176)
2018-01-09 00:34
추천 0
댓글 6
다른 게시글
-
ar이나 vr 같은거 하시는 형님들은 없으십니까?asdf(210.117) | 18.01.09추천 0
-
파이썬 할수록 좆같다 [1]pisum(211.215) | 18.01.09추천 0
-
오늘자 프갤 띵언ㅇ(125.177) | 18.01.09추천 3
-
파이썬에서 3중 반복문 한꺼번에 탈출하려면 어떻게 해야함? [15]pisum(211.215) | 18.01.09추천 0
-
모바일 개발하기 졷같지 안냐 [4]익명(175.125) | 18.01.09추천 0
-
자바 clone함수 도저히 이해가 안되서 질문좀요ㅠㅠㅠ자바(49.142) | 18.01.09추천 0
-
아 싀뱔 마소가 닷넷 좀만 일찎 풀었음 안드로이드 c#으로 개발하는데d(125.177) | 18.01.09추천 2
-
야 혹시 인프런에 강좌올린사람이 유명재임? [1]익명(211.252) | 18.01.08추천 2
-
야, 페미코인 만들어서 여초갤에 뿌리면 돈되지 않을까? [1]ㅇㅇㅇ(121.144) | 18.01.08추천 0
-
웹 프로젝트 따와서 납품하는 프리랜서할거면 php해라 [1]익명(175.125) | 18.01.08추천 0
메모리는 사용자 / 커널 로 나눈다. -> 커널은 사용자가 임의로 접근을 할수 없기 때문에 리퀘스트를 보내야 하는데 이게 시스템 콜
open/ write 같은 시스템 콜은 사실상 OS에서 하드웨어쪽으로 접근해서 메모리 적재하는 과정을 아주 간단한 함수로 만든 것임
왜 커널은 사용자가 임의로 접근을 할수 없나요?
정확하게 이해하려면 공룡책 추천드려요
ㅠㅠ
윈도우 NT부터..그리고 리눅스 등의 유닉스는 모두 Protected Mode로 구현되어 있다....과거 MS-DOS는 Real Mode로 구현되어 있어서....커널로 접근이 용이했고 그래서 코딩 잘못하면 도스 자체가 완전 뻑나는 경우도 있었지....Protected Mode부터는 커널로의 접근이 차단되어 코딩좀 잘못했다고 OS가 뻑나는 일은 없게됐지....근데 커널에 필요한 작업을 요청해야 OS가 그 작업을 수행해줄것 아냐...그래서 시스템 콜을 통해 커널에 필요한 작업을 요청하는 거임....커널에 임의로 접근하지 못하게 한건 OS를 보호하기 위함임...그래서 Protected Mode가 존재하는 것이고....