안녕하세요 현재 회사에서 리눅스 커널모듈 개발 프로젝트를 진행하고 있습니다.
진행 중에, 다음 요구사항을 만족시켜야 하는데요.
해당 모듈을 수행하는 프로세스 외에 타 프로세스에 의해서 간섭이 발생하지 않아야 한다.
여기서 말하는 간섭방지에 대한 예시는, 만약 모듈이 shared library이고 이를 사용하는 프로세스가 어플리케이션 프로그램 일 경우에 대해서 들어져 있습니다.
어플리케이션 레벨에서 동작하는 어플리케이션들이 서로 고유한 메모리 영역을 가지고 있어, A프로세스에서 B프로세스의 주소 영역을 참조하거나 값을 변경할 경우, 커널레벨에서 이를 잘못된 참조로 가정하고 프로세스를 종료시키기 때문에 이러한 잘못된 참조가 방지된다 (약간 다를 수 있으나 이러한 논지로 되어있습니다.)
그런데 커널 모드에서 동작하는 모듈이고 사용 주체가 커널 프로세스인 경우에는 이러한 독립성을 어떻게 보장할 수 있을까요??