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 file, stream, or device driver (in Unix, each represented as a file descriptor) 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.[2] Object-orientation has been more widely used in the user interfaces of operating systems than in their kernels.
Background
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.[1]
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. In the context of user profiles, the set of operations is limited by privilege level of a user.[1]
Present-day operating systems use object-oriented design principles for many components of the system, which includes protection.
Examples
Athene
Athene is an object-based operating system first released in 2000 by Rocklyte Systems.[3][4] The user environment was constructed entirely from objects that are linked together at runtime. Applications for Athene could also be created using this methodology and were commonly scripted using the object scripting language Dynamic Markup Language (DML). Objects could have been shared between processes by creating them in shared memory and locking them as needed for access. Athene's object framework was multi-platform, allowing it to be used in Windows and Linux environments for developing object-oriented programs. The company went defunct and the project abandoned sometime in 2009.
BeOS
BeOS[5] was an object-oriented operating system released in 1995, which used objects and the C++ language for the application programming interface (API). The kernel was written in C with C++ wrappers in user space. The OS did not see mainstream usage and proved commercially unviable, however it has seen continued usage and development by a small enthusiast community.
Choices
Choices is an object-oriented operating system developed at the University of Illinois at Urbana–Champaign.[6][7] It is written in C++ and uses objects to represent core kernel components like the central processing unit (CPU), processes, and so on. Inheritance is used to separate the kernel into portable machine-independent classes and small non-portable dependent classes. Choices has been ported to and runs on SPARC, x86, and ARM.
ETHOS
ETHOS was an experimental object oriented version of the Oberon System (see below) created by Clemens Szyperski for his PhD Thesis[8] written in Oberon-2
GEOS
PC/GEOS is a light-weight object-oriented multitasking graphical operating system with sophisticated window and desktop management featuring scalable fonts. It is mostly written in an object-oriented x86 assembly language dialect and some C/C++ and is designed to run on DOS (similar to Microsoft Windows up to Windows Me). GEOS was developed originally by Berkeley Softworks in 1990, which later became GeoWorks Corporation, and it is continued to be maintained by BreadBox Computer Company. Related software suites were named Ensemble and New Deal Office. Adaptations exist for various palmtops, and 32-bit systems with non-x86-CPUs.
Haiku
Haiku (originally named OpenBeOS), is an open-source replacement for BeOS. It reached its first development milestone in September 2009 with the release of Haiku R1/Alpha 1. The x86 distribution is compatible with BeOS at both source and binary level. Like BeOS, it is written primarily in C++ and provides an object-oriented API. It is actively developed.
IBM i (OS/400, i5/OS)
IBM introduced OS/400 in 1988. This OS ran exclusively on the AS/400 platform. Renamed IBM i in 2008, this operating system and runs exclusively on Power Systems which also can run AIX and Linux. IBM i uses an object-oriented methodology and integrates a database (Db2 for i). The IBM i OS has a 128-bit unique identifier for each object.
IBM OS/2 2.0
IBM's first priority based pre-emptive multitasking, graphical, windows-based operating system included an object-oriented user shell. It was designed for the Intel 80386 that used virtual 8086 mode with full 32-bit support and was released in 1992. ArcaOS, a new OS/2 based operating system initially called Blue Lion[9] is being developed by Arca Noae. The first version was released in May 2017.
IBM TopView
TopView was an object-oriented operating environment that loaded on a PC on DOS, and then took control from DOS. At that point it effectively became an object-oriented operating system with an object-oriented API (TopView API). It was IBM's first multi-tasking, window based, object-oriented operating system for the PC led by David C. Morrill and released in February 1985.
Java-based
Given that Oracle's (formerly Sun Microsystems') Java is today one of the most dominant object-oriented languages, it is no surprise that Java-based operating systems have been attempted. In this area, ideally, the kernel would consist of the bare minimum needed to support a Java virtual machine (JVM). This is the only component of such an operating system that would have to be written in a language other than Java. Built on the JVM and basic hardware support, it would be possible to write the rest of the operating system in Java; even parts of the system that are more traditionally written in a lower-level language such as C, for example device drivers, can be written in Java.
Examples of attempts at such an operating system include JavaOS, JOS,[10] JNode, and JX.
Xerox developed several workstations with an operating system written in Interlisp-D. Interlisp-D provided object-oriented extensions like LOOPS and CLOS.
Movitz and Mezzano are two more recent attempts at operating systems written in Common Lisp.
The Object Manager is in charge of managing NT objects. As part of this responsibility, it maintains an internal namespace where various operating system components, device drivers, and Win32 programs can store and lookup objects. The NT Native API provides routines that allow user space (mode) programs to browse the namespace and query the status of objects located there, but the interfaces are undocumented.[16] NT supports per-object (file, function, and role) access control lists allowing a rich set of security permissions to be applied to systems and services. WinObj is a Windows NT program that uses the NT Native API (provided by NTDLL.DLL) to access and display information on the NT Object Manager's name space.[17]
Object Linking and Embedding (OLE) was part of a grander plan named Cairo, the code name for a project at Microsoft from 1991 to 1996. Its charter was to build technologies for a next generation operating system that would fulfill Bill Gates' vision of "information at your fingertips".[18][19] Cairo never shipped, although parts of its technologies have since appeared in other products. The Windows 95graphical user interface was based on the initial design work that was done on the Cairo user interface. The remaining component is the object-based file system. It was once planned to be implemented in the form of Windows Future Storage (WinFS) as part of Windows Vista. WinFS is the code name for data storage and management system project based on relational databases, running on the Windows NT file system (NTFS), which is object-oriented in that it can store the NT objects including its NT object identifier. Each NTFS object has an object identifier; a shortcut with a target that's on an NTFS volume also records the object identifier of the shortcut target, and the object identifier of the drive.[20] WinFS was first demonstrated in 2003 as an advanced storage subsystem for the Microsoft Windowsoperating system, designed for persistence and management of structured, semi-structured, and unstructured data. WinFS development was cancelled in June 2006, with some of its technologies merged into other Microsoft products such as Microsoft SQL Server 2008 and Microsoft SharePoint. It was subsequently confirmed in an interview with Bill Gates that Microsoft planned to migrate applications like Windows Media Player, Windows Photo Gallery, Microsoft Office Outlook, etc., to use WinFS as the data storage back-end.[21]
NeXTSTEP
During the late 1980s, Steve Jobs formed the computer company NeXT. One of NeXT's first tasks was to design an object-oriented operating system, NeXTSTEP. They did this by adding an object-oriented framework on Mach and BSD using the Objective-C language as a basis. It achieved a niche status in the computing market, notably used by Tim Berners-Lee developing the first implementation of the World Wide Web.
OpenStep was provided as an API layer on many operating systems, namely HP-UX, NextStep, Solaris, and Windows.
Oberon System
Oberon System is a single user, object-oriented operating system made for the Ceres line of workstations (processor: National SemiconductorNS32000), developed in the later 1980s at ETH Zurich by Niklaus Wirth and Jürg Gutknecht. It is built entirely from modules of the programming language Oberon.[22] There are two successors of the Oberon System, ETHOS (see above) and, as of 2023 still maintained, an evolution named Active Object System (AOS),[23] then renamed Bluebottle, then renamed A2.
OOSMOS
The Object-Oriented State Machine Operating System (OOSMOS), written in C, promotes object-oriented encapsulation and implements a full table-driven hierarchical state machine architecture. It generates C code directly from state charts drawn with the open source tool UMLet. OOSMOS also supports a unique feature call 'state threads' which allows a thread of execution per state. OOSMOS operates on a bare board or in cooperation with an existing operating system.
Phantom OS
Phantom OS adheres to a principle where "everything is an object" and eliminates the concept of a file entirely, instead transparently persisting virtual memory to storage.
ReactOS
ReactOS is an open-source operating system intended to be binary compatible with application software and device drivers made for Microsoft Windows NT versions. Written from scratch, it aims to follow the architecture of Windows NT designed by Microsoft from the hardware level right through to the application level. This is not a Linux-based system, and shares none of the unix architecture.[24][25]
Smalltalk
Smalltalk was invented at Xerox in the 1970s. The Smalltalk system is fully object-oriented and needs very little support by BIOS and the run-time system.
Syllable
Syllable makes heavy use of C++ and for that reason is often compared to BeOS.
Taligent was an object-oriented operating system project, begun by Apple Inc. and jointly developed with IBM in the 1990s. It was later spun off to an IBM subsidiary and transformed from an operating system to a programming environment.
^Wegner, Peter (December 1987). "Dimensions of Object-based Language Design". ACM SIGPLAN Notices. 22 (12): 168–182. doi:10.1145/38807.38823. Also in Conference Proceedings on Object-oriented Programming Systems, Languages.
^"About". JOS (A Free Java-Based Operating System). Retrieved 2012-09-03. The JOS Project is a collaborative undertaking by an international group of Java™ programmers and enthusiasts aimed at the creation of a free and open Java™ based Operating System (JOS). As a collaborative effort, we work together to research how a Java-based operating system should work. Together, we work to build components for a Java-based operating system.
^
Knudsen, Svend Erik (25 October 2000). "Medos in Retrospect". In Böszörményi, László; Gutknecht, Jürg; Pomberger, Gustav (eds.). The School of Niklaus Wirth: The Art of Simplicity. Morgan Kaufmann. pp. 69–86. ISBN978-1558607231. ISBN1-55860-723-4 & dpunkt, ISBN3-932588-85-1.
^"Object-Based". Microsoft Hardware Development Centre. Retrieved Aug 23, 2015.
^Nebbett, Gary (February 20, 2000). Windows NT/2000 Native API Reference. Sams Publishing. p. 528. ISBN978-1578701995. The Windows NT/2000 Native API Reference provides the first comprehensive look at these undocumented services. A unique tool for software developers, this reference includes documentation of over 200 routines included in the native API, detailed description of routines that are either not directly accessible via the Win32 API, or that offer substantial additional functionality.
^Russinovich, Mark. "Windows Sysinternals WinObj". Microsoft. Retrieved 2014-05-16. Obj is a must-have tool if you are a system administrator concerned about security, a developer tracking down object-related problems, or just curious about the Object Manager namespace.
^Gates, Bill (1994). ""Information at Your Fingertips" #2 Keynote (The Road Ahead) – Comdex 1994". Microsoft. Retrieved 2014-05-16. Bill Gates' "Information At Your Fingertips" keynote speech for Comdex 1995 became the basis for his book The Road Ahead, predicting the next decade in technology – right and wrong. These predictions are enlivened by the interaction between Gates speaking and a made-for-Comdex future crime show.
^Chen, Raymond (2007). "Windows Confidential: The NT Way (excerpts from "The Old New Thing" book)". Microsoft. Retrieved 2014-05-16. The Windows NT file system folks looked at the Windows 95 shortcut resolution algorithm and scoffed. " We can do better than that: We're object-oriented!" Each NTFS object has an object identifier; a shortcut with a target that's on an NTFS volume also records the object identifier of the shortcut target, as well as the object identifier of the drive itself.
^Friedl, Klemens. "About ReactOS: Object Based". ReactOS Project. Retrieved 2017-02-19. ReactOS uses an object metaphor that is pervasive throughout the architecture of the system. Not only are all of the things in the UNIX file metaphor viewed as objects by ReactOS, but so are things such as processes and threads, shared memory segments, the global registry database and even access rights.
^Filby, J. "ReactOS: An open-source alternative to NT?." IEEE Software 16.1 (1999): 35–35.
Tang Wei汤唯Tang Wei di tahun 2022Lahir7 Oktober 1979 (umur 44)Hangzhou, Zhejiang, TiongkokPendidikanAkademi Pusat Drama - (B.S., 2002)PekerjaanAktrisTahun aktif1998–sekarangSuami/istriKim Tae-yong (m. 2014) Ini adalah nama Tionghoa; marganya adalah Tang. Artikel ini memuat Teks Tionghoa. Tanpa bantuan render yang baik, anda mungkin akan melihat tanda tanya, kotak-kotak, atau simbol lainnya bukannya Karakter Tionghoa. Tang Wei[1] (Hanzi sederhana: 汤唯; Hanzi trad…
У Вікіпедії є статті про інші населені пункти з такою назвою: Нововолодимирівка. село Нововолодимирівка Автобусна зупинка неподалік селаАвтобусна зупинка неподалік села Країна Україна Область Хмельницька область Район Кам'янець-Подільський Громада Орининська сільс…
Pour les articles homonymes, voir Âme (homonymie). Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus. Cet article doit être recyclé (mars 2021). Une réorganisation et une clarification du contenu paraissent nécessaires. Améliorez-le, discutez des points à améliorer ou précisez les sections à recycler en utilisant {{section à recycler}}. Psyché, personnification de l'âme dans la mythologie grecque : une psyché antique au Musée archéologique natio…
Agreement between Greece and Turkey The ghost town of Kayaköy (Livisi) in southwestern Anatolia. This Greek village was abandoned during the 1923 population exchange.[1] The 1923 population exchange between Greece and Turkey (Greek: Ἡ Ἀνταλλαγή, romanized: I Antallagí, Ottoman Turkish: مبادله, romanized: Mübâdele, Turkish: Mübadele) stemmed from the Convention Concerning the Exchange of Greek and Turkish Populations signed at Lausanne, Switzerland, on 30 …
For other uses, see Live Over Europe (disambiguation). 2007 live album by GenesisLive over Europe 2007Live album by GenesisReleased20 November 2007 (US)26 November 2007 (UK)RecordedJune–July 2007Genre Progressive rock pop rock Length139:06LabelVirgin, AtlanticProducerNick DavisGenesis chronology Genesis 1983–1998(2007) Live over Europe 2007(2007) Genesis 1970–1975(2008) Professional ratingsReview scoresSourceRatingAllmusic[1] Live over Europe 2007 is the sixth live album by…
التهاب الجريبات الثاقب معلومات عامة من أنواع اضطرابات جلدية ثاقبة تعديل مصدري - تعديل التهاب الجريبات الثاقب (بالإنجليزية: Perforating folliculitis) هو مرض جلدي في البشر يتميز بطفح جلدي تقراني منفصل يشمل غالباً المناطق المشعرة من الأطراف.[1]:539–540 انظر أيضاً قائمة الأمراض وال…
في الأعلى: تشكل الصورة الحقيقية عندما تكون العدسة محدبة، وفي الأسفل: تكون الصورة الحقيقية في المرآة المقعرة تكون الصورة الحقيقية دائمًا مقلوبة صورة حقيقية هي الصورة التي تتكون من تجمع الأشعة الضوئية المنعكسة عن جسمٍ ما، وتكون مقلبة دائمًا.[1] وتنشأ الصورة الحقيقية في ال…
Form of novel from late 19th-century Russian literature For other uses, see Anti-nihilism (disambiguation). Part of a series onNihilism Category Disambiguation Schools Absurdism Agnosticism Atheism Buddhism Determinism Existentialism Fallibilism Nominalism Noneism Pessimism Presentism Postmodernism Reductionism Skepticism Solipsism Concepts Ambiguity Amorality Anattā Anomie Après moi, le déluge Cognitive bias Continuum hypothesis God is dead Illusion Incompleteness theorems Infinite regress L…
Ten artykuł od 2022-08 zawiera treści, przy których brakuje odnośników do źródeł.Należy dodać przypisy do treści niemających odnośników do wiarygodnych źródeł.(Dodanie listy źródeł bibliograficznych lub linków zewnętrznych nie jest wystarczające).Sprawdź w źródłach: Encyklopedia PWN • Google Books • Google Scholar • Federacja Bibliotek Cyfrowych • BazHum • RCIN • Internet Archive (texts / inlib…
Faience pottery from Rouen, France Rouen faience ewer, helmet shape with lambrequin painted decoration, c. 1720 The city of Rouen, Normandy has been a centre for the production of faience or tin-glazed earthenware pottery, since at least the 1540s. Unlike Nevers faience, where the earliest potters were immigrants from Italy, who at first continued to make wares in Italian maiolica styles with Italian methods, Rouen faience was essentially French in inspiration, though later influenced by East As…
For information on all Drexel University sports, see Drexel Dragons. Drexel Dragons men's squashUniversityDrexel UniversityFirst season2011-2012Head coachJohn White (11th season)LeagueCollege Squash AssociationConferenceMid-Atlantic Squash ConferenceLocationPhiladelphia, PennsylvaniaVenueKline & Specter Squash CenterRivalriesPenn, Frankin & MarshallAll-time record117–99 (.542)All-Americans5NicknameDragonsColorsNavy blue and gold[1] Conference…
Governing body for rugby union in Sri Lanka Sri Lanka RugbySportRugby UnionJurisdictionNationalAbbreviationSLRFounded10 August 1908; 115 years ago (10 August 1908)AffiliationWorld RugbyAffiliation date1988Regional affiliationAsia RugbyHeadquartersOld Sports Ministry Complex, No. 33 Torrington Place, Colombo 7PresidentLasitha GunaratneVice president(s)Nazeem MohamedDirectorRohan GunaratneSecretaryThusitha PerisOfficial websitewww.srilankarugby.lk Sri Lanka Rugby is the governing body…
2017 American filmKill 'Em AllOfficial DVD coverDirected byPeter MalotaWritten byCraig StewartBrian SmolenskyJesse CilioProduced byRafael PrimoracStarringJean-Claude van DammeAutumn ReeserPeter StormareCinematographyMark RutledgeMusic byAldo ShllakuDistributed byDestination FilmsRelease date June 6, 2017 (2017-06-06) (US) Running time100 minutesCountryUnited StatesLanguagesEnglishAlbanian Kill 'Em All is a 2017 American direct-to-video action film directed by Peter Malota, and…
Protective spirit of a place in classical Roman religion For the novel by Ben Aaronovitch, see Genius Loci (novel). For the short story by Clark Ashton Smith, see Genius Loci and Other Tales. Votive inscription to Jupiter Optimus Maximus and the Genius loci by the Signifer of Legio XXX Ulpia Victrix on behalf himself and his own legion during the consulate of Maternus and Atticus (185 AD) In classical Roman religion, a genius loci (plural genii locorum) was the protective spirit of a place. It w…
This article relies excessively on references to primary sources. Please improve this article by adding secondary or tertiary sources. Find sources: Hanoi International School – news · newspapers · books · scholar · JSTOR (January 2023) (Learn how and when to remove this template message) Private schoolHanoi International SchoolAddress48 Liễu Giai, Cống Vị, Ba Đình District, HanoiInformationTypePrivateEstablished1996Head of schoolHoàng Minh Khôi…
Estradiol, the base estrogen of most estrogen esters. This is a list of estrogen esters, or ester prodrugs of estrogens. It includes esters, as well as ethers, of steroidal estrogens like estradiol, estrone, and estriol and of nonsteroidal estrogens like the stilbestrols diethylstilbestrol and hexestrol. Esters of steroidal estrogens Estradiol esters Marketed Many esters of estradiol have been marketed, including the following major esters:[1][2] Estradiol acetate (Femring, Femtr…
El texto que sigue es una traducción defectuosa. Si quieres colaborar con Wikipedia, busca el artículo original y mejora esta traducción.Copia y pega el siguiente código en la página de discusión del autor de este artículo: {{subst:Aviso mal traducido|Carrie 2: La ira}} ~~~~ Carrie 2ː La iraFicha técnicaDirección Katt SheaDirección artística Geoffrey S. GrimsmanProducción Paul MonashGuion Rafael MoreuBasada en Carrie de Stephen KingMúsica Danny B. HarveySonido Dan SableMaquillaje W…