Объектно-ориентированная операционная система

редактировать
операционная система

объектно-ориентированная операционная система - это операционная система, в которой используются принципы объектно-ориентированного проектирования.

Объектно-ориентированная операционная система отличается от объектно-ориентированного пользовательского интерфейса или программирования фреймворка, который может выполняться поверх не объектно-ориентированной операционной системы. система, такая как DOS или Unix.

. Уже существуют концепции объектно-ориентированного языка, задействованные в разработке более типичной операционной системы, такой как Unix. Хотя более традиционный язык, такой как C, не поддерживает объектную ориентацию так же гибко, как более современные языки, понятие, например, файл, поток, или драйвер устройства (в Unix каждый из них представлен как файловый дескриптор ) может считаться хорошим примером объектов. В конце концов, это абстрактные типы данных с различными методами в форме системных вызовов, поведение которых зависит от типа объекта и деталей реализации. скрыты от звонящего.

Ориентация на объект была определена как объекты + наследование, и наследование - это только один из подходов к более общей проблеме делегирования, которая возникает в каждой операционной системе. Объектная ориентация более широко используется в пользовательских интерфейсах операционных систем, чем в их ядрах.

Содержание

  • 1 Предпосылки
  • 2 Примеры
  • 3 См. Также
  • 4 Ссылки
  • 5 Внешние ссылки

Предпосылки

Объект - это экземпляр класса, который предоставляет определенный набор функций. Два объекта можно различать в зависимости от поддерживаемых ими функций (или методов). В контексте операционной системы объекты связаны с ресурсом. Исторически принципы объектно-ориентированного проектирования использовались в операционных системах для обеспечения нескольких механизмов защиты.

Механизмы защиты в операционной системе помогают обеспечить четкое разделение между различными пользовательскими программами. Он также защищает операционную систему от любого вредоносного поведения пользовательской программы. Например, рассмотрим случай профилей пользователей в операционной системе. Пользователь не должен иметь доступа к ресурсам другого пользователя. Объектная модель решает эти проблемы защиты, когда каждый ресурс действует как объект. Каждый объект может выполнять только набор операций. В контексте профилей пользователей набор операций ограничен уровнем привилегий пользователя.

Современные операционные системы используют принципы объектно-ориентированного проектирования для многих компонентов системы, включая защиту.

Примеры

Athene
была объектно-ориентированной операционной системой, впервые выпущенной в 2000 году компанией. Пользовательская среда была полностью построена из объектов, связанных между собой во время выполнения. Приложения для Athene также могли быть созданы с использованием этой методологии и обычно создавались с использованием языка объектных сценариев (DML). Объекты можно было совместно использовать между процессами, создав их в общей памяти и заблокировав их по мере необходимости для доступа. Объектная структура Athene была многоплатформенной, что позволяло использовать ее в средах Windows и Linux для разработки объектно-ориентированных программ. Компания прекратила свое существование, и проект был закрыт где-то в 2009 году.
BeOS
Одной из попыток создания действительно объектно-ориентированной операционной системы была BeOS середины 1990-х, который использовал объекты и язык C ++ для интерфейса прикладного программирования (API). Но само ядро ​​было написано на C с оболочками C ++ в пользовательском пространстве. Система не получила широкого распространения и оказалась коммерчески нежизнеспособной. Сейчас ее использует и разрабатывает небольшая группа энтузиастов.
Choices
- объектно-ориентированная операционная система, разработанная в Университете штата Иллинойс в Урбане-Шампейне. Он написан на C ++ и использует объекты для представления основных компонентов ядра, таких как центральный процессор (CPU), процессы и т. Д. Наследование используется для разделения ядра на переносимые машинно-независимые классы и небольшие непереносимые зависимые классы. Choices был перенесен на SPARC, x86 и ARM.
GEOS
PC / GEOS и работает на нем. многозадачная графическая операционная система со сложным управлением окнами и рабочим столом с масштабируемыми шрифтами. Он в основном написан на объектно-ориентированном диалекте языка ассемблера x86 и частично на C / C ++ и предназначен для работы поверх DOS (аналогично Microsoft Windows до Windows Me ). GEOS была первоначально разработана Berkeley Softworks в 1990 году, которая позже стала GeoWorks Corporation, и продолжает поддерживаться компанией BreadBox Computer Company. Связанные программные пакеты были названы Ensemble и New Deal Office. Существуют адаптации для различных карманных компьютеров и 32-разрядных систем с процессорами, отличными от x86.
Haiku
После прекращения поддержки BeOS была предпринята попытка создать открытый началась замена источника. Haiku (первоначально называвшаяся OpenBeOS) достигла своего первого рубежа в сентябре 2009 года с выпуском Haiku R1 / Alpha 1. Дистрибутив x86 совместим с BeOS как на уровне исходного кода, так и на двоичном уровне. Как и BeOS, он написан в основном на C ++ и предоставляет объектно-ориентированный API. Она активно развивается.
IBM i (OS / 400, i5 / OS)
IBM представила OS / 400 в 1988 году. Эта ОС работала исключительно на Платформа AS / 400. Эта операционная система, переименованная в IBM i в 2008 году, работает исключительно на Power Systems, которая также может работать под управлением AIX и Linux. IBM i использует объектно-ориентированную методологию и интегрирует базу данных (). ОС IBM i имеет 128-битный уникальный идентификатор для каждого объекта.
IBM OS / 2 2.0
Графическая операционная система на базе Windows с упреждающей многозадачностью на основе первого приоритета включает объектно-ориентированная оболочка пользователя. Он был разработан для Intel 80386, который использовал виртуальный режим 8086 с полной 32-битной поддержкой, и был выпущен в 1992 году. Новая операционная система на базе OS / 2 под названием Blue Lion разрабатывается Arca Noae, которая запланирована будет выпущен в первом квартале 2017 года.
IBM TopView
TopView была объектно-ориентированной операционной средой, которая загружалась на ПК поверх DOS, а затем передавала управление из DOS. С этого момента она фактически превратилась в объектно-ориентированную операционную систему с объектно-ориентированным API (TopView API). Это была первая многозадачная объектно-ориентированная операционная система IBM для ПК под руководством Дэвида С. Моррилла, выпущенная в феврале 1985 года.
Java-based
Учитывая, что Oracle (ранее Sun Microsystems ') Java сегодня является одним из наиболее доминирующих объектно-ориентированных языков, поэтому неудивительно, что были попытки использовать операционные системы на основе Java. В этой области в идеале ядро ​​ должно состоять из самого минимума, необходимого для поддержки виртуальной машины Java (JVM). Это единственный компонент такой операционной системы, который должен быть написан на языке, отличном от Java. Основываясь на JVM и базовой аппаратной поддержке, можно было бы написать остальную часть операционной системы на Java; даже части системы, которые более традиционно написаны на языке более низкого уровня, таком как C, например, драйверы устройств, могут быть написаны на Java.
Примеры попыток такой работы система включает JavaOS, JOS и JX.
Lisp-based
Объектно-ориентированные операционные системы, написанные на диалекте Lisp Lisp Machine Lisp (а позже Common Lisp ) был разработан в Массачусетском технологическом институте. Он был коммерциализирован с Lisp Machines от Symbolics, Lisp Machines Inc. и Texas Instruments. Компания Symbolics назвала свою операционную систему Genera. Он был разработан с использованием объектно-ориентированного расширения Lisp Flavors. Позже, в New Flavors, а затем с использованием Common Lisp Object System.
Xerox разработала несколько рабочих станций с операционной системой, написанной на Interlisp-D. Interlisp-D предоставил объектно-ориентированные расширения, такие как LOOPS и Common Lisp Object System.
и Mezzano - две недавние попытки создания операционных систем, написанных на Common Lisp.
Microsoft Singularity
Singularity - экспериментальная операционная система, основанная на Microsoft .NET Framework. Он сопоставим с операционными системами на основе Java.
Microsoft Windows NT
Windows NT - это семейство операционных систем (включая Windows, 7, 8, Phone 8, 8.1, Windows 10, Xbox ) производства Microsoft, первая версия которого была выпущена в июле 1993 года. Это язык программирования высокого уровня, независимая от процессора, многопроцессорная, многопользовательская операционная система. Его лучше всего описать как объектно-ориентированный, а не объектно-ориентированный, поскольку он не включает в себя все свойства наследования объектно-ориентированных языков.
Диспетчер объектов - это отвечает за управление объектами NT. В рамках этой ответственности он поддерживает внутреннее пространство имен , где различные компоненты операционной системы, драйверы устройств и программы Win32 могут хранить и искать объекты. NT Native API предоставляет процедуры, которые позволяют программам пользовательского пространства (режим) просматривать пространство имен и запрашивать статус объектов, расположенных в нем, но интерфейсы недокументированы. NT поддерживает для каждого объекта (файла, функции и роли) списки управления доступом, позволяющие применять к системам и службам широкий набор разрешений безопасности. WinObj - это программа Windows NT, которая использует NT Native API (предоставляемый NTDLL.DLL) для доступа и отображения информации в пространстве имен NT Object Manager.
Component Object Model
На пользовательский режим со стороны Windows, компонентная объектная модель (COM) - это двоичный интерфейс приложения, стандарт для программных компонентов, представленный Microsoft в 1993 году. Он используется для включения межпроцессного взаимодействия и создания динамического объекта в большом диапазоне языков программирования. COM является основой для нескольких других технологий и платформ Microsoft, включая связывание и внедрение объектов (OLE), OLE Automation, ActiveX, COM +, объектная модель распределенных компонентов (DCOM), оболочка Windows, DirectX и среда выполнения Windows. OLE - это проприетарная технология, разработанная Microsoft, которая позволяет встраивать и связывать с документами и другими объектами. На техническом уровне объект OLE - это любой объект, реализующий интерфейс IOleObject, возможно, вместе с широким спектром других интерфейсов, в зависимости от потребностей объекта. Его основное использование - для управления составными документами , но оно также используется для передачи данных между различными приложениями с помощью перетаскивания и буфера обмена
Двоичный формат составного файла
Двоичный формат составного файла (CFBF) - это формат файла для хранения множества файлов и потоков в одном файле на диске. CFBF разработан Microsoft и представляет собой реализацию Microsoft COM Structured Storage. Структурированное хранилище широко используется в качестве основного формата файлов в приложениях Microsoft Office, включая Microsoft Word, Microsoft Excel, Microsoft Powerpoint, Microsoft Access и является основой Advanced Authoring Format.
Связывание и встраивание объектов
Связывание и внедрение объектов (OLE) было частью более масштабного плана под названием Cairo, кодовое имя для проект в Microsoft с 1991 по 1996 год. Его уставом было создание технологий для операционной системы следующего поколения, которые соответствовали бы видению Билла Гейтса «информация на кончиках ваших пальцев». Cairo никогда не поставлял, хотя часть его технологий с тех пор появилась в других продуктах. Windows 95 пользовательский интерфейс был основан на первоначальной проектной работе, которая была проделана над пользовательским интерфейсом Cairo. Остающийся компонент - это объектная файловая система . Когда-то планировалось реализовать в виде WinFS как часть Windows Vista. WinFS (сокращение от Windows Future Storage) - это кодовое имя для хранилища данных и системного проекта управления, основанного на реляционных базах данных, работающих поверх NTFS. Файловая система Windows NT NTFS является объектно-ориентированной в том смысле, что она может хранить объекты NT, включая идентификатор объекта NT. Каждый объект NTFS имеет идентификатор объекта; ярлык с целью, находящийся на томе NTFS, также записывает идентификатор объекта цели ярлыка, а также идентификатор объекта самого диска. WinFS была впервые продемонстрирована в 2003 году как усовершенствованная подсистема хранения для операционной системы Microsoft Windows , предназначенная для сохраняемости и управления структурированной, полуструктурированные, а также неструктурированные данные. Разработка WinFS была отменена в июне 2006 года, и некоторые из ее технологий были объединены с другими продуктами Microsoft, такими как Microsoft SQL Server 2008 и Microsoft SharePoint. Впоследствии в интервью Биллу Гейтсу было подтверждено, что Microsoft планировала перенести такие приложения, как Windows Media Player, Windows Photo Gallery, Microsoft Office Outlook и т. Д., На использовать WinFS в качестве серверной части хранилища данных.
NeXTSTEP
В конце 1980-х годов Стив Джобс сформировал компьютерную компанию NeXT. Одна из первых задач NeXT заключалась в разработке объектно-ориентированной операционной системы NeXTSTEP. Они сделали это, добавив объектно-ориентированный фреймворк поверх Mach и BSD, используя язык Objective-C в качестве основы. Он занял нишевое положение на рынке вычислительной техники, в частности, его использовал Тим Бернерс-Ли при разработке первой реализации World Wide Web.
NeXTStep, позже преобразованный в OpenStep и Cocoa API в Mac OS X и iOS.
OpenStep был предоставлен как уровень API поверх многих операционных систем, а именно HP-UX, NextStep, Solaris и Windows.
OOSMOS
Операционная система с объектно-ориентированным конечным автоматом (), написанная на C, способствует объектно-ориентированной инкапсуляции и реализует полную иерархическая архитектура конечного автомата, управляемая таблицами. Генерирует код C непосредственно из диаграмм состояний, нарисованных с помощью инструмента с открытым исходным кодом UMLet. OOSMOS также поддерживает уникальную функцию вызова «потоки состояний», которая позволяет выполнять поток для каждого состояния. OOSMOS работает на чистой плате или в сотрудничестве с существующей операционной системой.
ReactOS
ReactOS - компьютерная операционная система с открытым исходным кодом, предназначенная для двоичной совместимости с прикладным программным обеспечением и устройством драйверы для версий Microsoft Windows NT. Написанный с нуля, он должен следовать архитектуре Windows NT, разработанной Microsoft, от уровня оборудования до уровня приложений. Это не система на базе Linux и не имеет ничего общего с архитектурой unix..
Self
Self (язык программирования) был изобретен в Xerox PARC. Затем он был разработан в Стэнфордском университете, а Sun Microsystems.
Smalltalk
Smalltalk был изобретен в Xerox в 1970-х годах. Система Smalltalk полностью объектно-ориентирована и требует очень небольшой поддержки со стороны BIOS, а исполняющая система.
Syllable
Syllable активно использует C ++ и по этой причине часто сравнивают с BeOS.
Symbolics Genera
Genera из Symbolics - это операционная система для машин Lisp, написанная на ZetaLisp и Symbolics Common Lisp. Он интенсивно использует Flavors (раннее объектно-ориентированное расширение Lisp) и Common Lisp Object System (CLOS). Разработка началась в середине 70-х годов в Массачусетском технологическом институте.
Taligent
Taligent был проектом объектно-ориентированной операционной системы, начатым Apple Inc. и разработанным совместно с IBM в 1990-е годы. Позже он был выделен в дочернюю компанию IBM и преобразован из операционной системы в среду программирования.

См. Также

Ссылки

Внешние ссылки

Последняя правка сделана 2021-06-01 07:21:55
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте