문득 생각이 났는데.. 프로그램 모드는 어떻게 확인할까요??

gloomyr의 이미지

돌리는 프로그램이 유저모드에서 도는지
커널모드에서 도는지 어떻게 확인할가요??

유저모드 프로그램과 커널모드 프로그램의 경계는 어떻게 될까요?
유저도드에서 시스템콜 하는 함수쓰면 커널모드 프로그램으로 되느건가요???

문득 궁금해 지네요

phonon의 이미지

커널모드는 OS 자체.
유저모드는 그 OS상에서 OS에서 제공해 주는 API를 사용해서 운영되는 프로그램.

커널모드는 메모리나 하드웨어를 직접 건드리는 것.
유저모드는 리소스에 대해 API를 이용한 간접적인 접근.
따라서, 시스템콜이 발생했다고 커널모드는 아니라고 봅니다.

아래에 자세한 설명이 되어 있습니다.
http://www.codinghorror.com/blog/2008/01/understanding-user-and-kernel-mode.html

곁가지로 예전 도스에서는 프로그램이 직접 메모리와 일대일 매칭해서 접근을 했었습니다.
그래서, 에러가 발생하면 시스템 자체가 재부팅을 했었지만,
윈도우NT로 오면서 프로텍트모드와 가상메모리에 의해서 간접적인 접근만 가능하게 되었습니다.
즉, 프로그램의 오류에 의해서 시스템이 halt당할 일이 없어졌다고 봐야지요.(이론 상으로는...)

gloomyr의 이미지

흠 그렇다면 프로세스 A B 가 있고
이 두프로그램이 쉐어드 메모리를 공유메모리로 설정해서 돌고 있다면
이 두 프로세스 A B 는 그냥 유저모드 프로그램 인가요?

phonon의 이미지

일단 프로세스에서 커널에 공유메모리를 요청하면 공간을 할당하고,
만들어진 공유메모리는 커널에 의해서 관리됩니다.
그리고, 프로세스가 더 이상 사용하지 않는다고 바로 삭제되는 것도 아니지요.

프로그램 자체는 유저모드, 공유메모리는 커널모드라고 봐야 할 것 같군요.

pastime의 이미지

시스템 콜 함수를 실행하는 동안만 커널 모드입니다.

gloomyr의 이미지

프로그램이 시작해서 어느시점부터
종료할때까지 쉐어드메모리를 쓰는데
그렇다면 이프로그램은 그냥 커널모드라고 분류해야 하겠군요

pastime의 이미지

커널 모드가 아니라 유저 모드지요.. ;;

다시 말씀드리지만
공유 메모리를 세팅하는 시스템 콜을 수행하는 순간에만 커널 모드로 실행되고
시스템 콜에서 리턴되서 사용자 코드를 실행하면 유저 모드입니다.

gloomyr의 이미지

만들어진 공유메모리를 사용하는 과정은 커널모드가 아닌 유저 모드인가요?

만들때만(shmget, met) 등 함수를 호출하는 순간만 커널모드가 되고나서

그만들어진 공유메모리를 사용하고있을때는 유저모드라는 말이시죠??

쉐어드 메모리가 만들어진 공간에 접근할때도 유저모드라는 말이시죠??

그렇다면 유저모드겠군요.

preisner의 이미지

뭔가를 좀 잘못 이해 하고 계신 듯..
공유메모리를 사용하든 어쨋든 간에,
공유메모리를 위한 시스템 콜을 사용하는 순간에 커널모드로 진입하고,
커널모드에서 작업이 완료되면 다시 유저모드로 전환 한다는 말이죠..

gloomyr의 이미지

아하~
그렇군요

시스템 콜 루틴이 수행되는 동안만 이군요
공유메모리 --> 왠지 커널모드 필이 나는 단어라서
잠시 착각하고 있엇던듯 합니다.
감사합니다.

unsouled의 이미지

음.. 공유 메모리에 대한 접근은 시스템 콜입니다.

shmdt(), shmctl(), shmat(), shmget() 이 실행되는 동안만 해당 프로그램은 커널 모드로 "동작하는 중"인 겁니다.

chengjiec3의 이미지

Power cable Tattoo issues Tattoo Power are situated incoming Kingston upon Hull, England! Powerline tattoo supplies Tattoo caters equals a specialist fellowship, who have lived planning and fabricating tattooing issues and equipment since the yore cardinal long time. We are one of the most gravid manufacturing business* and providers of prize tattoo equipment and provides incoming European Economic tattoo kits Community Tattoo Relievo Kits. We suppliesing many new more pocket-size tattoo render societies when fountainhead while trading engineer to tattooists, sol if you expect monetary value* because mass wholesale grades please reach uracils Accessories.jeans should be washed as little as possible diesel jeans online, that the less washed jeans levis jeans,but if washed too much, you lose that unique type diesel
jeans shop
. jeans will shrink jeans
shop
. This pair of jeans that will destroy the natural feeling of relaxation,
also lead to fading or discoloration diesel jeans 2010.