Trusted Operating System Design
Operating systems by
themselves (regardless of their security constraints) are very difficult to
design. They handle many duties, are subject to interruptions and context
switches, and must minimize overhead so as not to slow user computations and
interactions. Adding the responsibility for security enforcement to the
operating system substantially increases the difficulty of designing an
operating system.
Nevertheless, the need for effective security
is becoming more pervasive, and good software engineering principles tell us
that it is better to design the security in at the beginning than to shoehorn
it in at the end. (See Sidebar 5-3 for
more about good design principles.) Thus, this section focuses on the design of
operating systems for a high degree of security. First, we examine the basic
design of a standard multipurpose operating system. Then, we consider
isolation, through which an operating system supports both sharing and
separating user domains. We look in particular at the design of an operating
system's kernel; how the kernel is designed suggests whether security will be
provided effectively. We study two different interpretations of the kernel, and
then we consider layered or ring-structured designs.
When the quality of the design is not
considered up front and embedded in the development process, the result can be
a sort of software anarchy. The system may run properly at first, but as
changes are made, the software degrades quickly and in a way that makes future
changes more difficult and time consuming. The software becomes brittle,
failing more often and sometimes making it impossible to add or change
features, including security. Equally important, brittle and poorly designed
software can easily hide vulnerabilities because the software is so difficult
to understand and the execution states so hard to follow, reproduce, and test.
Thus, good design is in fact a security issue, and secure software must be
designed well.
Related Topics
Privacy Policy, Terms and Conditions, DMCA Policy and Compliant
Copyright © 2018-2024 BrainKart.com; All Rights Reserved. Developed by Therithal info, Chennai.