Современная история UNIX с 90-х годов
Реферат, 07 Мая 2014, автор: пользователь скрыл имя
Краткое описание
После разделения компании AT&T, товарный знак UNIX и права на оригинальный исходный код неоднократно меняли владельцев, в частности, они длительное время принадлежали компании Novell.
В 1993 году Novell передала права на товарный знак и на сертификацию программного обеспечения на соответствие этому знаку консорциуму X/Open, который затем объединился с Open Software Foundation, образовав консорциум The Open Group. Он объединяет ведущие компьютерные корпорации и государственные организации, в том числе IBM, Hewlett-Packard, Sun, NASA и многие другие.
Содержание
. Современные системы UNIX……………………………………………….…3
2. Примеры современных систем UNIX……………………………………...…5
3. Архитектура OC UNIX………………...……………………………………....9
4. Краткая хронология OC UNIX……………………………………………….11
Список используемой литературы……………………………………………...12
Прикрепленные файлы: 1 файл
новый UNIX.doc
— 194.50 Кб (Скачать документ)
BeOS
Полностью графическая система, основой программного API которой стал POSIX. Аппаратные требования: процессор Pentium или Pentium-совместимый. Существует коммерческая и бесплатная версия ОС. Коммерческая версия отличается от бесплатной тем, что включает следующие расширения: специальная редакция Partition Magic, RealPlayer G2, драйвера для различных принтеров HP, видео кодеки Cinepak, Indeo 5, raw audio, P-JPEG, MP3, VideoRecorder и техническая поддержка.
Итак, в настоящее время (начало 2004 года - В.К.) мы имеем на платформе Intel x86 следующие основные версии UNIX:
- FreeBSD 5.2;
- OpenBSD 3.4;
- NetBSD 1.6.2;
- Linux 2.0, 2.2, 2.4, 2.6 в виде множества различных дистрибутивов;
- Solaris 9;
- SCO OpenServer 5.0.7 и UnixWare 7.1.3
На других платформах (основные версии):
- Linux 2.6.x (практически все платформы);
- NetBSD 1.6.2 (практически все платформы);
- Mac OS X 10.3.2 (PowerPC);
- AIX 5L v5.2 (PowerPC);
- Solaris 9, 10 (SPARC);
- HP-UX 11i (PA-RISC, Intel Itanium);
- Tru64 Unix V.5.1B-1 (Alpha);
- IRIX 6.5.23 (MIPS)
3. Архитектура ОС UNIX
Архитектура
ОС UNIX - многоуровневая. На нижнем уровне,
непосредственно над оборудованием, работает ядро операционной системы. Функции
ядра доступны через интерфейс системных вызовов, образующих
второй уровень. На следующем уровне работают командные интерпретаторы, команды
и утилиты системного администрирования,
коммуникационные драйверы и пр
Основные функции ядра
Основные функции ядра UNIX (которое может быть монолитным или модульным) включают:
- планирование и переключение процессов;
- управление памятью;
- обработку прерываний;
- низкоуровневую поддержку устройств (через драйверы);
- управление дисками и буферизация данных;
- синхронизацию процессов и обеспечение средств межпроцессного взаимодействия (IPC).
Системные вызовы
Системные вызовы обеспечивают:
- сопоставление действий пользователя с запросами драйверов устройств;
- создание и прекращение процессов;
- реализацию операций ввода-вывода;
- доступ к файлам и дискам;
- поддержку функций терминала.
Системные вызовы преобразуют процесс, работающий в режиме пользователя, в защищенный процесс, работающий в режиме ядра. Это позволяет процессу вызывать защищенные процедуры ядра для выполнения системных функций.
Системные вызовы обеспечивают программный интерфейс для доступа к процедурам ядра. Они обеспечивают управление системными ресурсами, такими как память, пространство на дисках и периферийные устройства. Системные вызовы оформлены в виде библиотеки времени выполнения. Многие системные вызовы доступны через командный интерпретатор.
Пользовательские процессы и процессы ядра
Пользовательские процессы образуют следующие два уровня и:
- защищены от других пользовательских процессов;
- не имеют доступа к процедурам ядра, кроме как через системные вызовы;
- не могут непосредственно обращаться к пространству памяти ядра.
Пространство (памяти) ядра - это область памяти, в которой процессы ядра (процессы, работающие в контексте ядра) реализуют службы ядра. Любой процесс, выполняющийся в пространстве ядра, считается работающим в режиме ядра. Пространство ядра - привилегированная область; пользователь получает к ней доступ только через интерфейс системных вызовов. Пользовательский процесс не имеет прямого доступа ко всем инструкциям и физическим устройствам, - их имеет процесс ядра. Процесс ядра также может менять карту памяти, что необходимо для переключения процессов (смены контекста).
Пользовательский процесс работает в режиме ядра, когда начинает выполнять код ядра через системный вызов.
Обмен данными между пространством ядра и пользовательским пространством
Поскольку пользовательские процессы и ядро не имеют общего адресного пространства памяти, необходим механизм передачи данных между ними. При выполнении системного вызова, аргументы вызова и соответствующий идентификатор процедуры ядра передаются из пользовательского пространства в пространство ядра. Идентификатор процедуры ядра передается либо через аппаратный регистр процессора, либо через стек. Аргументы системного вызова передаются через пользовательскую область вызывающего процесса.
Пользовательская область процесса содержит информацию о процессе, необходимую ядру:
- корневой и текущий каталоги, аргументы текущего системного вызова, размеры сегмента текста, данных и стека для процесса;
- указатель на запись в таблице процессов, содержащую информацию для планировщика, например, приоритет;
- таблицу дескрипторов файлов пользовательского процесса с информацией об открытых файлах;
- стек ядра для процесса (пустой, если процесс работает в режиме пользователя).
Пользовательский процесс не может обращаться к пространству ядра, но ядро может обращаться к пространству процесса.
Системное программное обеспечение
ОС UNIX обеспечивает ряд стандартных системных программ для решения задач администрирования, переконфигурирования и поддержки файловой системы, в частности:
- для настройки параметров конфигурации системы;
- для перекомпоновки ядра (если она необходима) и добавления новых драйверов устройств;
- для создания и удаления учетных записей пользователей;
- создания и подключения физических файловых систем;
- установки параметров контроля доступа к файлам.
Для решения этих задач системное ПО (работающее в пользовательском режиме) часто использует системные вызовы.
4. Краткая хронология OC UNIX
1990
4.3BSD Reno: поддержка различных платформ, NFS, SLIP, Kerberos. SUN Solaris 1 (SunOS 4.1.4). Появление OSF/1 от Open Software Foundation: микроядро Mach 2.6 + SVR4, SMP, нити, Motif GUI.
1991
BSD Net2 (4.3BSD Lite) - не содержит спорного кода AT&T. Появление ОС GNU HURD. Появление ОС Linux (на базе Minix). Выделение из AT&T отдельного подразделения USL (Unix System Laboratories), владеющего кодом AT&T UNIX и System V.
1992
4.4BSD: виртуальная память как в Mach 2.5, журнализируемая файловая система UFS. Закрытие CSRG в Беркли. SVR4.2: журнализируемая файловая система Veritas FS, списки контроля доступа ACL, динамически загружаемые модули ядра. USL UnixWare 1 - реализация SVR4.2. SunOS 5 = Solaris 2 (SunOS 4 + SVR4).
1993
Появление ОС FreeBSD. Solaris 2.2. NeXTSTEP 3.2. IRIX 5.3, HP-UX 9.04, AIX 4.0, Linux 0.99, UnixWare 1.1.
1994
OSF 1.3: микроядро Mach 3, поддержка 64-битовых платформ. FreeBSD 2.0, SCO OpenDesktop 3.2.4. UnixWare 1.1.2. Linux 1.0.9. USL куплена компанией Novell.
1995
Появление OpenBSD и NetBSD. Solaris 2.5. Появление Digital UNIX (DEC OSF/1). Появление SCO OpenServer 5.0. UnixWare 2.0: SVR4.2 MP от Novell. Novell продает UnixWare и весь исходный код AT&T компанииSCO. Выход HP-UX 10 (с добавлениями из UnixWare). Завершение работ над A/UX.
1996
FreeBSD 2.1.6. OpenBSD 2.0. IRIX 6.3. Linux 2.0.21. OpenSTEP 4 - завершение проекта NeXTSTEP. SCO UnixWare 2.1. Микроядро Mach 4.
1997
FreeBSD 2.2.5, OpenBSD 2.2, NetBSD 1.3, Solaris 2.6 (под SPARC и Intel), SCO OpenServer 5.0.4. IRIX 6.4. GNU Hurd 0.2 (+ Mach 4). Linux 2.0.28.
1998
FreeBSD 3.0 (+4.4BSD), Solaris 7, DigitalUNIX 4, SCO: OpenServer 5.0.5, UnixWare 7 (SVR5). HP-UX 11.0. Linux 2.0.36. IBM: проект Monterey (AIX 4.3 + SVR5).
1999
FreeBSD 3.4. OpenBSD 2.6, NetBSD 1.4. Появление Mac OS X и проекта Darwin (Mach 4 + FreeBSD 3.1). Solaris 8 beta. Компанию DEC купил Compaq: Tru64 Unix V.5.0. (DigitalUNIX). IRIX 6.5.6. SCO: OpenServer 5.0.5a, UnixWare 7.1.1. AIX 4.3.3. Linux 2.2.13.
2000
FreeBSD 4.0-4.2. OpenBSD 2.8. NetBSD 1.5. Solaris 8. Apple: Mac OS X Server, Darwin 1.2.1. Tru64 Unix V.5.1. IRIX 6.5.10. SCO: OpenServer 5.0.6. Компания SCO продала все свои ОС компании Caldera (Caldera OpenLinux). Hurd A1, Linux 2.4.0, 2.2.18. HP-UX 11i. AIX 5L alpha (проект Monterey).
2001
FreeBSD 4.4. OpenBSD 3.0. NetBSD 1.5.2. Mac OS X 10.1.2. SUN: Solaris 8 10/01, Solaris 9 alpha (не для Intel-архитектуры). Tru64 Unix V.5.1A, IRIX 6.5.13. SCO OpenServer 5.0.6a. Hurd H2. Caldera: OpenUNIX 8: UnixWare 7.1.1 + LKP=Linux 2.4.0 - прозрачная поддержка Linux-приложений. Linux 2.4.17, 2.0.39, 2.2.20. AIX 5L v.5.1.
2002
FreeBSD 4.7. OpenBSD 3.2. NetBSD 1.6. Mac OS X 10.2 (Jaguar). Darwin 6.2. SUN: Solaris 8 12/02, Solaris 9 OE. QNX 6.2. IRIX 6.5.18. Debian GNU/Hurd J2. SCO: UnixWare 7.1.3 (в продолжение OpenUNIX 8. Caldera снова стала SCO...). Linux (влияние IRIX и AIX, в частности, файловые системы): 2.5.2-2.5.52 - экспериментальное ядро. 2.4.20, 2.2.23. HP-UX 11i v1.6. AIX 5L v.5.2.
2003
FreeBSD 5.1, FreeBSD 4.9. OpenBSD 3.4. NetBSD 1.6.1. Mac OS X 10.3.2. Darwin 6.6-7.2. SUN: Solaris 9 OE 12/03, Solaris 9 x86 PE, Solaris 10 Preview. QNX 6.2.1. IRIX 6.5.22. Debian GNU/Hurd K5. Tru64 Unix V5.1B-1. SCO: UnixWare 7.1.3/OKP (OpenServer Kernel Personality), OpenServer 5.0.7. Linux: 2.6.0, 2.4.23, 2.2.25. HP-UX 11i v2 (в том числе, для Intel Itanium).
2004
FreeBSD 5.2. NetBSD 1.6.2. Solaris 10 Software Express 02/04. IRIX 6.5.23. Linux: 2.6.3, 2.4.25, 2.2.26, 2.0.40.
2005-2010
дальнейшее развитиие ветки Linux 2.6 и обновления по старым веткам ядер (2.0, 2.2, 2.4);
Выход ОС Solaris 10;
последовательное развитиие FreeBSD, OpenBSD, NetBSD, других веток BSD.
дальнейшее развитие Mac OS X и Darwin;
дальнейшее последовательное развитие IRIX.
Список используемой литературы:
1. http://life-prog.ru/view_os.
2. http://www.opennet.ru/docs/
3. http://rutracker.org/forum/
4. http://matrix-azamat.blogspot.