tailieunhanh - Lecture Operating system concepts - Chapter 18: Protection
The various processes in an operating system must be protected from one another’s activities. For that purpose, various mechanisms exist that can be used to ensure that the files, memory segments, CPU, and other resources can be operated on by only those processes that have gained proper authorization from the operating system. In this chapter, we examine the problem of protection in great detail and develop a unifying model for implementing protection. | Module 18: Protection I Goals of Protection I Domain of Protection I Access Matrix I Implementation of Access Matrix I Revocation of Access Rights I Capability-Based Systems I Language-Based Protection Operating System Concepts Silberschatz, Galvin and Gagne 2002 Protection I Operating system consists of a collection of objects, hardware or software I Each object has a unique name and can be accessed through a well-defined set of operations. I Protection problem - ensure that each object is accessed correctly and only by those processes that are allowed to do so. Operating System Concepts Silberschatz, Galvin and Gagne 2002 Domain Structure I Access-right = where rights-set is a subset of all valid operations that can be performed on the object. I Domain = set of access-rights Operating System Concepts Silberschatz, Galvin and Gagne 2002 Domain Implementation (UNIX) I System consists of 2 domains: ✦ User ✦ Supervisor I UNIX ✦ Domain = user-id ✦ Domain switch accomplished via file system. ✔ Each file has associated with it a domain bit (setuid bit). ✔ When file is executed and setuid = on, then user-id is set to owner of the file being executed. When execution completes user-id is reset. Operating System Concepts Silberschatz, Galvin and Gagne 2002 Domain Implementation (Multics) I Let Di and Dj be any two domain rings. I If j < I Þ Di ⊆ Dj Multics Rings Operating System Concepts Silberschatz, Galvin and Gagne 2002 Access Matrix I View protection as a matrix (access matrix) I Rows represent domains I Columns represent objects I Access(i, j) is the set of operations that a process executing in Domaini can invoke on Objectj Operating System Concepts Silberschatz, Galvin and Gagne 2002 Access Matrix Figure A Operating System Concepts Silberschatz, Galvin and Gagne 2002 Use of Access Matrix I If a process in Domain Di tries to do “op” on object Oj, then “op” must be in the access matrix. I .
đang nạp các trang xem trước