A hardware architecture for implementing protection rings
Communications of the ACM · 1972 · 210 citations · 8 references
Hardware Processor MechanismsEngineeringInformation SecurityComputer ArchitectureAccess PrivilegeFormal VerificationSoftware AnalysisHardware SecurityShared MemoryTrusted Execution EnvironmentSecure ComputingHardware Security SolutionMemory ManagementConcurrent ProgrammingOperating System SecurityComputer EngineeringComputer ScienceData SecurityCryptographyProgram AnalysisComputer UtilityFormal MethodsSystem SoftwareProtection Rings
Protection of computations and information is an important aspect of a computer utility. In a system which uses segmentation as a memory addressing scheme, protection can be achieved in part by associating concentric rings of decreasing access privilege with a computation. This paper describes hardware processor mechanisms for implementing these rings of protection. The mechanisms allow cross-ring calls and subsequent returns to occur without trapping to the supervisor. Automatic hardware validation of references across ring boundaries is also performed. Thus, a call by a user procedure to a protected subsystem (including the the supervisor) is identical to a call to a companion user procedure. The mechanisms of passing and referencing arguments are the same in both cases as well.
8
The structure of the “THE”-multiprogramming system
Edsger W. Dijkstra · Communications of the ACM · 1968
1.1K citations
Programming semantics for multiprogrammed computations
Jack B. Dennis, Earl C. Van Horn · Communications of the ACM · 1983
680 citations
Programming semantics for multiprogrammed computations
Jack B. Dennis, Earl C. Van Horn · Communications of the ACM · 1966
552 citations
Butler Lampson · 1969
166 citations
Protection in an information processing utility
Robert M. Graham · Communications of the ACM · 1968
119 citations