Concept

Object-oriented operating system

An object-oriented operating system is an operating system that is designed, structured, and operated using object-oriented programming principles. An object-oriented operating system is in contrast to an object-oriented user interface or programming framework, which can be run on a non-object-oriented operating system like DOS or Unix. There are already object-based language concepts involved in the design of a more typical operating system such as Unix. While a more traditional language like C does not support object-orientation as fluidly as more recent languages, the notion of, for example, a , stream, or device driver (in Unix, each represented as a ) can be considered a good example of objects. They are, after all, abstract data types, with various methods in the form of system calls which behavior varies based on the type of object and which implementation details are hidden from the caller. Object-orientation has been defined as objects + inheritance, and inheritance is only one approach to the more general problem of delegation that occurs in every operating system. Object-orientation has been more widely used in the user interfaces of operating systems than in their kernels. An object is an instance of a class, which provides a certain set of functionalities. Two objects can be differentiated based on the functionalities (or methods) they support. In an operating system context, objects are associated with a resource. Historically, the object-oriented design principles were used in operating systems to provide several protection mechanisms. Protection mechanisms in an operating system help in providing a clear separation between different user programs. It also protects the operating system from any malicious user program behavior. For example, consider the case of user profiles in an operating system. The user should not have access to resources of another user. The object model deals with these protection issues with each resource acting as an object. Every object can perform only a set of operations.

About this result
This page is automatically generated and may contain information that is not correct, complete, up-to-date, or relevant to your search query. The same applies to every other page on this website. Please make sure to verify the information with EPFL's official sources.
Related concepts (6)
Oberon (operating system)
The Oberon System is a modular, single-user, single-process, multitasking operating system written in the programming language Oberon. It was originally developed in the late 1980s at ETH Zurich. The Oberon System has an unconventional visual text user interface (TUI) instead of a conventional command-line interface (CLI) or graphical user interface (GUI). This TUI was very innovative in its time and influenced the design of the Acme text editor for the Plan 9 from Bell Labs operating system.
Lilith (computer)
The DISER Lilith is a custom built workstation computer based on the Advanced Micro Devices (AMD) 2901 bit slicing processor, created by a group led by Niklaus Wirth at ETH Zürich. The project began in 1977, and by 1984 several hundred workstations were in use. It has a high resolution full page portrait oriented cathode ray tube display, a mouse, a laser printer interface, and a computer networking interface. Its software is written fully in Modula-2 and includes a relational database program named Lidas.
Ceres (workstation)
The Ceres Workstation was a workstation computer built by Niklaus Wirth's group at ETH Zurich in 1987.The central processing unit (CPU) is a National Semiconductor NS32000, and the operating system, named Oberon System is written fully in the object-oriented programming language Oberon. It is an early example of an operating system using basic object-oriented principles and garbage collection on the system level and a document centered approach for the user interface (UI), as envisaged later with OpenDoc.
Show more

Graph Chatbot

Chat with Graph Search

Ask any question about EPFL courses, lectures, exercises, research, news, etc. or try the example questions below.

DISCLAIMER: The Graph Chatbot is not programmed to provide explicit or categorical answers to your questions. Rather, it transforms your questions into API requests that are distributed across the various IT services officially administered by EPFL. Its purpose is solely to collect and recommend relevant references to content that you can explore to help you answer your questions.