운영체제를 설계할 때에는 설계목표와 명세(specification)이 올바르게 정의되어야 한다. 이를 위해서 하드웨어와 시스템 유형을 잘 파악하고 그에 맞는 운영체제를 설계하여야 한다. 사용자 측면에서는 사용하기 쉽고, 배우기 쉽고, 신뢰성이 있고, 안전하고, 빠른 것을 목적으로 하고, 시스템의 관리 측면에서는 설계및 구현, 그리고 유지보수가 쉬운 것을 목적으로 한다. 운영체제의 모든 요구 조건을 해결하는 완전한 해결책은 없지만, 다양한 요구조건에 대한 성공이 입증된 다양한 접근법은 있다. 바로 Mechanism과 Policy를 분리하여야 한다는 점이다. Mechanism은 어떻게 할 건지(How)에 대한 관점이다. mechanism은 정책 변경에 민감하지 않는 일반적인 것이 바람직하다. Policy는 ..