권한 분리 대신 커널 모드 설정이 필요한 이유는 무엇입니까?


12

커널 모드 설정은 처음에는 Linux를 사용하는 데 어려움이 있었지만 이제는 매우 훌륭합니다. X는 루트로 실행할 필요가 없습니까? 고해상도 하드웨어 가속 콘솔? 멋진 것.

문제는 많은 UNIX 플랫폼에 모드 설정 커널 드라이버가 없다는 것입니다. 따라서 KMS를 사용하는 하드웨어는 이제 대부분 Linux로 제한됩니다.

내 질문 : 왜 실제로 커널에서 이것을 구현합니까?

화면 해상도를 설정하기 위해 하드웨어 액세스가 필요한 경우 별도의 권한있는 데몬 또는 작은 setuid 바이너리를 사용하지 않는 이유는 무엇입니까? 이는 특권 코드를 분리하고 디스플레이 서버가 제한된 사용자로 실행되도록하는 이점을 유지합니다. 특수 드라이버 요구 사항을 없애고 UNIX 간 크로스 지원을보다 쉽게 ​​만듭니다. 권리? 아니면 여기서 중요한 것을 놓치고 있습니까?


이것이 마이크로 커널 OS 아키텍처 의 기본 개념 입니다.
Barmar

이 경우 마이크로 커널 유형 모델을 생각하지 않고 다른 커널 사이의 이식성 만 생각합니다.
DanL4096

1
KMS는 OpenBSD와 FreeBSD에서도 사용되고 있으며 솔라리스에서도 KMS를 사용하고 있습니다. 이런 방식으로 개발자가 Linux 용으로 작동하는 드라이버를 만들면 KMS를 사용하는 다른 사람에게 드라이버 지원도 제공됩니다.
hspaans

1
건축적인 것입니다. 하드웨어 액세스는 커널이 아닌 하나의 작업입니다. 커널과 사용자 공간 사이에서 작업을 분할하는 것은 어색합니다. 흐릿한 인터페이스로 실제로 한 작업 만 수행하는 두 개의 구성 요소가 필요하기 때문입니다. 궁극적으로 커널 도메인 내에서 작업을 수행하므로 모든 것을 커널에 넣는 강력한 사례가 있습니다. 물론 원하는 곳 어디에서나 구현할 수 있습니다. 견고한 플랫폼은 모두 명확하게 정의 된 아키텍처와 인터페이스에 관한 것입니다. 모두 흔들 흔들입니다.
Bananguin

1
X가 더 이상 작동하지 않는 이상한 모드에서 콘솔이 여러 가지 충돌로 인해 꽤 오래 지속되었지만 TTY 스타일의 원뿔 액세스는 실제로 복원되지 않았습니다. IIRC GL 가속 문제와 충돌로 인해이 상황이 자주 발생합니다. KMS는 커널이 문제를 해결하고 콘솔 상태를 복원하는 방법을 알고 있음을 의미합니다. IOW는 부분적으로 유용성 향상입니다. 커널이 userspace 데몬에게 이것을 요구할 수 있다고 주장 할 수는 있지만, 항상 제대로 작동하지는 않을 것이라고 생각합니다. 또한 커널에 넣는 것은 폐쇄 소스 어려움이 없음을 의미합니다.
James Youngman

답변:


1

커널은 이미 네트워크 하드웨어, 오디오 하드웨어, 팬 및 기타 하드웨어를 관리하므로 그래픽 하드웨어도 커널에 의해 관리됩니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.