Операционные системы

Функции операционных систем и история их развития. Подходы к обеспечению информационной безопасности. Однозадачные и многозадачные, однопользовательские и многопользовательские, однопроцессорные и многопроцессорные, локальные и сетевые системы.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 15.01.2012
Размер файла 1,4 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

В качестве примера рассмотрим требования класса C2, которому удовлетворяют ОС Windows NT, отдельные реализации Unix и ряд других.

Каждый пользователь должен быть идентифицирован уникальным входным именем и паролем для входа в систему. Доступ к компьютеру предоставляется лишь после аутентификации.

Система должна быть в состоянии использовать эти уникальные идентификаторы, чтобы следить за действиями пользователя (управление избирательным доступом). Владелец ресурса (например, файла) должен иметь возможность контролировать доступ к этому ресурсу.

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

Системный администратор должен иметь возможность вести учет всех событий, относящихся к безопасности.

Система должна защищать себя от внешнего влияния или навязывания, такого как модификация загруженной системы или системных файлов, хранящихся на диске.

Сегодня на смену оранжевой книге пришел стандарт Common Criteria, а набор критериев Controlled Access Protection Profile сменил критерии класса C2.

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

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

Формируя политику безопасности, необходимо учитывать несколько базовых принципов. Так, Зальтцер (Saltzer) и Шредер (Schroeder) (1975) на основе своего опыта работы с MULTICS сформулировали следующие рекомендации для проектирования системы безопасности ОС.

Проектирование системы должно быть открытым. Нарушитель и так все знает (криптографические алгоритмы открыты).

Не должно быть доступа по умолчанию. Ошибки с отклонением легитимного доступа будут обнаружены скорее, чем ошибки там, где разрешен неавторизованный доступ.

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

Давать каждому процессу минимум возможных привилегий.

Защитные механизмы должны быть просты, постоянны и встроены в нижний слой системы, это не аддитивные добавки (известно много неудачных попыток "улучшения" защиты слабо приспособленной для этого ОС MS-DOS).

Важна физиологическая приемлемость. Если пользователь видит, что защита требует слишком больших усилий, он от нее откажется. Ущерб от атаки и затраты на ее предотвращение должны быть сбалансированы.

Приведенные соображения показывают необходимость продумывания и встраивания защитных механизмов на самых ранних стадиях проектирования системы.

Сравнительный анализ безопасности операционных систем

На Omninerd.com вышел довольно подробный обзор проблем с безопастостью в различных ОС. Тестировался целый спектр операционных систем, в частности Windows XP, Windows Server 2003, Vista Ultimate, MacOS, FreeBSD, Solaris, Fedora Core и Slackware.

Основные выводы: Windows и Apple OS X имеют существенные проблемы с безопастностью в плане удаленного взлома системы. Windows вообще имеет в своей поставке (т.е. сразу после инсталляции) большое количество "дыр", позволяющих хакерам не только получить административный доступ к системе, но и запускать на ней произвольный код.

Тем не менее после установки патчей, регулярно выпускаемых разработчиками, продукты от Microsoft и Apple становятся в основном защищенными, однако, если не скачивать обновления, операционные системы могут вновь оказаться открытыми для хакеров, т.к. в этих ОС постоянно находят новые и иногда очень серьезные бреши в безопасности.

В свою очередь UNIX-продукты и ОС на основе Linux имеют по умолчанию высокий уровень безопасности и пригодны к работе в сети без каких-либо дальнейших действий в плане инсталляции патчей (тем не менее, патчи все равно рекомендуется устанавливать).

Впрочем, причины того, что в Windows, самой распространенной в мире операционной системе, постоянно находят дыры, проистекают не столько из-за принципиальной "дырявости" самой операционной системы, сколько от наплыва желающих ее взломать. Если бы на месте Windows (по распространенности) оказалась какая-то другая операционная система, то еще неизвестно, сколько в ней бы стали выявлять дыр. А раз система непопулярна, то смысл выискивать в ней дыры теряется.

Файловые системы

Без файловой системы, нам пришлось бы беспокоиться о расположении данных приложения на внешнем носителе, о сохранности чужих данных и многом другом. Файловая система предоставляет удобный интерфейс (API) для общения с носителями и является одним из важнейших элементов операционной системы

Файловая система -- порядок, определяющий способ организации, хранения и именования данных на носителях информации в компьютерах, а также в другом электронном оборудовании: цифровых фотоаппаратах, мобильных телефонах и т. п. Файловая система определяет формат содержимого и физического хранения информации, которую принято группировать в виде файлов. Конкретная файловая система определяет размер имени файла (папки), максимальный возможный размер файла и раздела, набор атрибутов файла. Некоторые файловые системы предоставляют сервисные возможности, например, разграничение доступа или шифрование файлов.

Файловая система связывает носитель информации с одной стороны и API для доступа к файлам -- с другой. Когда прикладная программа обращается к файлу, она не имеет никакого представления о том, каким образом расположена информация в конкретном файле, так же, как и на каком физическом типе носителя (CD, жёстком диске, магнитной ленте, блоке флеш-памяти или другом) он записан. Всё, что знает программа -- это имя файла, его размер и атрибуты. Эти данные она получает от драйвера файловой системы. Именно файловая система устанавливает, где и как будет записан файл на физическом носителе (например, жёстком диске).

Цели и задачи файловой системы

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

Основные цели использования файла перечислены ниже.

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

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

Файловая система (ФС) -- это часть операционной системы, включающая:

совокупность всех файлов на диске;

наборы структур данных, используемых для управления файлами, такие, например, как каталоги файлов, дескрипторы файлов, таблицы распределения свободного и занятого пространства на диске;

комплекс системных программных средств, реализующих различные операции над файлами, такие как создание, уничтожение, чтение, запись, именование и поиск файлов.

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

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

Задачи, решаемые ФС, зависят от способа организации вычислительного процесса в целом. Самый простой тип -- это ФС в однопользовательских и однопрограммных ОС, к числу которых относится, например, MS-DOS. Основные функции в такой ФС нацелены на решение следующих задач:

именование файлов;

программный интерфейс для приложений;

отображения логической модели файловой системы на физическую организацию хранилища данных;

устойчивость файловой системы к сбоям питания, ошибкам аппаратных и программных средств.

Задачи ФС усложняются в операционных однопользовательских мультипрограммных ОС, которые, хотя и предназначены для работы одного пользователя, но дают ему возможность запускать одновременно несколько процессов. Одной из первых ОС этого типа стала OS/2. К перечисленным выше задачам добавляется новая задача совместного доступа к файлу из нескольких процессов. Файл в этом случае является разделяемым ресурсом, а значит, файловая система должна решать весь комплекс проблем, связанных с такими ресурсами. В частности, в ФС должны быть предусмотрены средства блокировки файла и его частей, предотвращения гонок, исключение тупиков, согласование копий и т. п.

В многопользовательских системах появляется еще одна задача: защита файлов одного пользователя от несанкционированного доступа другого пользователя.

Еще более сложными становятся функции ФС, которая работает в составе сетевой ОС. Эта тема рассматривается в последней главе книги, посвященной управлению сетевыми ресурсами.

Иерархическая структура файловой системы

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

Граф, описывающий иерархию каталогов, может быть деревом или сетью. Каталоги образуют дерево, если файлу разрешено входить только в один каталог и сеть -- если файл может входить сразу в несколько каталогов. Например, в MS-DOS и Windows каталоги образуют древовидную структуру, а в UNIX -- сетевую. В древовидной структуре каждый файл является листом. Каталог самого верхнего уровня называется корневым каталогом, или корнем (root).

При такой организации пользователь освобожден от запоминания имен всех файлов, ему достаточно примерно представлять, к какой группе может быть отнесен тот или иной файл, чтобы путем последовательного просмотра каталогов найти его. Иерархическая структура удобна для многопользовательской работы: каждый пользователь со своими файлами локализуется в своем каталоге или поддереве каталогов, и вместе с тем все файлы в системе логически связаны.

Частным случаем иерархической структуры является одноуровневая организация, когда все файлы входят в один каталог.

Классификация файловых систем

По предназначению файловые системы можно классифицировать на нижеследующие категории.

Для носителей с произвольным доступом (например, жёсткий диск): FAT32, HPFS, ext2 и др. Поскольку доступ к дискам в разы медленнее, чем доступ к оперативной памяти, для прироста производительности во многих файловых системах применяется асинхронная запись изменений на диск. Для этого применяется либожурналирование, например в ext3, ReiserFS, JFS, NTFS, XFS, либо механизм soft updates и др. Журналирование широко распространено в Linux, применяется в NTFS. Soft updates -- в BSD системах.

Для носителей с последовательным доступом (например, магнитные ленты): QIC и др.

Для оптических носителей -- CD и DVD: ISO9660, HFS, UDF и др.

Виртуальные файловые системы: AEFS и др.

Сетевые файловые системы: NFS, CIFS, SSHFS, GmailFS и др.

Для флэш-памяти: YAFFS, ExtremeFFS, exFAT.

Немного выпадают из общей классификации специализированные файловые системы: ZFS (собственно файловой системой является только часть ZFS), VMFS (т. н. кластерная файловая система, которая предназначена для хранения других файловых систем) и др.

FAT 12/16/32

FAT -- классическая архитектура файловой системы, которая из-за своей простоты всё ещё широко используется для флеш-дисков и карт памяти. В недавнем прошлом использовалась в дискетах, на жёстких дисках и других носителях информации.

Разработана Биллом Гейтсом и Марком МакДональдом (англ.) в 1976--1977 годах.[1][2] Использовалась в качестве основной файловой системы в операционных системах семейств DOS и Windows (до версии Windows 2000).

Существует три версии FAT -- FAT12, FAT16 и FAT32. Они отличаются разрядностью записей в дисковой структуре, т.е. количеством бит, отведённых для хранения номера кластера. FAT12 применяется в основном для дискет, FAT16 -- для дисков малого объёма. На основе FAT была разработана новая файловая система exFAT (extended FAT), используемая преимущественно для флеш-накопителей.

Изначально FAT не поддерживала иерархическую систему каталогов. Все файлы располагались в корневом каталоге. Это оказалось неудобно и к тому же малый размер корневого каталога ограничивал количество файлов на диске. Каталоги были введены с выходом MS-DOS 2.0.

VFAT -- это расширение FAT, появившееся в Windows 95. В FAT имена файлов имеют формат 8.3 и состоят только из символов кодировки ASCII. В VFAT была добавлена поддержка длинных (до 255 символов) имён файлов.

NTFS 1.2/3.0/3.1

NTFS (от англ. New Technology File System -- «файловая система новой технологии») -- стандартная файловая система для семейства операционных систем Microsoft Windows NT.

NTFS заменила использовавшуюся в MS-DOS и Microsoft Windows файловую систему FAT. NTFS поддерживает систему метаданных и использует специализированные структуры данных для хранения информации о файлах для улучшения производительности, надёжности и эффективности использования дискового пространства. NTFS хранит информацию о файлах в главной файловой таблице -- Master File Table (MFT).NTFS имеет встроенные возможности разграничивать доступ к данным для различных пользователей и групп пользователей (списки контроля доступа -- Access Control Lists (ACL)), а также назначать квоты (ограничения на максимальный объём дискового пространства, занимаемый теми или иными пользователями). NTFS использует систему журналирования USN для повышения надёжности файловой системы.

NTFS разработана на основе файловой системы HPFS (от англ. High Performance File System -- высокопроизводительная файловая система), создававшейся Microsoft совместно с IBM для операционной системы OS/2. Но, получив такие несомненно полезные новшества, как квотирование, журналируемость, разграничение доступа и аудит, в значительной степени утратила присущую прародительнице (HPFS) весьма высокую производительность файловых операций.

Различают несколько версий NTFS:

v1.2 используется в Windows NT 3.51 и Windows NT 4.0

v3.0 поставляется с Windows 2000

v3.1 -- с Windows XP, Windows Server 2003,Windows Server 2003 R2, Windows Vista, Windows 7 и Windows Server 2008, Windows Server 2008 R2.

Спецификации файловой системы являются закрытыми. Это создаёт определённые трудности при реализации её поддержки в сторонних продуктах, не принадлежащих Microsoft, -- в частности, разработчикам драйверов для свободных операционных систем приходится заниматься обратной разработкой системы.

Unix File System (UFS)

Unix File System (UFS) -- файловая система, созданная для операционных систем семейства BSD и используемая в переработанном и дополненном виде на данный момент как основная в операционных системах-потомках (FreeBSD, OpenBSD, NetBSD).

Поддержка данной файловой системы имеется также в ядре Linux и операционной системе Solaris.

Физически UFS состоит из следующих частей:

? несколько блоков в начале раздела отводится под загрузочную область (которая должна инициализироваться отдельно от файловой системы)

? суперблок, включающий магическое число, инициализирующее файловую систему, и некоторые другие важные числа, описывающие геометрию и настройку некоторых параметров файловой системы

? описание групп цилиндров. Каждая группа включает следующие компоненты:

_ Резервную копию суперблока

_ Заголовок группы цилиндров, статистические данные и т. д., информацию аналогичную содержащейся в суперблоке, но для конкретной группы

_ Цифра индексных дескрипторов, каждый из которых содержит атрибуты файлов

_ Цифра блоков данных

Каталог файлов содержит только список файлов в директории и индексный дескриптор, связанный с каждым файлом. Все файлы метаданные хранятся в индексном дескрипторе.

Ext 1/2/3/4

Extended File System (расширенная файловая система), сокращённо ext или extfs -- первая файловая система, разработанная специально для ОС на ядре Linux. Представлена в апреле 1992 г.для ядра Linux 0.96c.

Используемая структура метаданных была разработана Реми Кардом, на создание которой его вдохновила Unix File System (UFS). Целью было преодолеть ограничения файловой системы Minix File System -- в новой файловой системе наибольший возможный размер раздела и файла увеличен до 2 Гб, а максимальная длина имени файла -- до 255 символов.

ext является первой версией расширенной файловой системы. Впоследствии была заменена ext2 и xiafs. Со временем ext2 вытеснила xiafs благодаря долгосрочной жизнеспособности.

Second Extended File System (дословно: «вторая расширенная файловая система»), сокращённо ext2 (иногда ext2fs) -- файловая система ядра Linux. Была разработана Реми Кардом взамен ext. По скорости и производительности работы она может служить эталоном в тестах производительности файловых систем. Файловая система ext2 обгоняет ext3, и уступает лишь более современной ext4 в тесте на чтение.

Главный недостаток ext2 (и одна из причин демонстрации столь высокой производительности) заключается в том, что она не является журналируемой файловой системой. Он был устранён в файловой системе ext3 -- следующей версии Extended File System, полностью совместимой с ext2.

Файловая система ext2 по-прежнему используется на флеш-картах и твердотельных накопителях (SSD), так как отсутствие журналирования является преимуществом при работе с накопителями, имеющими ограничение на количество циклов записи.

Логическая структура ext2

Граф, описывающий иерархию каталогов файловой системы ext2, представляет собой сеть. Причиной такой организации является то, что один файл может входить сразу в несколько каталогов.

Все типы файлов имеют символьные имена. В иерархически организованных файловых системах обычно используются три типа имен: простые, составные и относительные. Не является исключением и ext2. Ограничения на простое имя состоят в том что, его длина не должна превышать 255 символов, а также в имени не должны присутствовать символ NULL и слеш. Ограничения на символ NULL связаны с представлением строк в языке Си, а на символ слеш -- с тем, что он используются как разделительный символ между каталогами. Полное имя представляет собой цепочку простых символьных имен всех каталогов, через которые проходит путь от корня до данного файла. В файловой системе ext2 файл может входить в несколько каталогов, а значит, иметь несколько полных имен; здесь справедливо соответствие «один файл -- много полных имен». В любом случае полное имя однозначно определяет файл.

Атрибутами файловой системы ext2 являются:

? тип и права доступа к файлу,

? владелец, группа доступа,

? информация о разрешённых операциях,

? время создания, дата последнего доступа, дата последнего изменения и время последнего удаления,

? текущий размер файла,

? спецификация файла:

_ обычный файл,

_ каталог,

_ файл байт-ориентированного устройства,

_ файл блочно-ориентированного устройства,

_ именованный канал,

_ символическая ссылка,

_ число занимаемых блоков,

? ACL

? другие

Атрибуты файлов хранятся не в каталогах, как это сделано в ряде простых файловых систем, а в специальных таблицах. В результате каталог имеет очень простую структуру, состоящую всего из двух частей: номера индексного дескриптора и имени файла.

Third Extended File System (третья версия расширенной файловой системы), сокращённо ext3 или ext3fs -- журналируемая файловая система, используемая в операционных системах на ядре Linux, является файловой системой по умолчанию во многих дистрибутивах. Основана на ФС ext2, начало разработки которой положил Стивен Твиди.

Основное отличие от ext2 состоит в том, что ext3 журналируема, то есть в ней предусмотрена запись некоторых данных, позволяющих восстановить файловую систему при сбоях в работе компьютера.

Стандартом предусмотрено три режима журналирования:

writeback: в журнал записываются только метаданные файловой системы, то есть информация о её изменении. Не может гарантировать целостности данных, но уже заметно сокращает время проверки по сравнению с ext2;

ordered: то же, что и writeback, но запись данных в файл производится гарантированно до записи информации об изменении этого файла. Немного снижает производительность, также не может гарантировать целостности данных (хотя и увеличивает вероятность их сохранности при дописывании в конец существующего файла);

journal: полное журналирование как метаданных ФС, так и пользовательских данных. Самый медленный, но и самый безопасный режим; может гарантировать целостность данных при хранении журнала на отдельном разделе (а лучше -- на отдельном жёстком диске).

Fourth Extended File System (четвёртая версия расширенной файловой системы), сокр. ext4, или ext4fs -- журналируемая файловая система, используемая в ОС с ядром Linux. Основана на файловой системе ext3, которая является файловой системой по умолчанию во многих дистрибутивах Linux.

Впервые экспериментальная поддержка ext4 была выпущена в виде патча для Linux версий 2.6.19-rc1-mm1 и 2.6.19-rc1-git8 10 октября 2006 года программистом Эндрю Мортоном.

Основной особенностью стало увеличение максимального объёма одного раздела диска до 1 эксбибайта (260 байт) при размере блока 4Kb, и увеличение размера одного файла до 16 тебибайт. Кроме того, в ext4 представлен механизм пространственной (extent) записи файлов (новая информация добавляется в конец заранее выделенной по соседству области файла), уменьшающий фрагментацию и повышающий производительность.

Операционная система Unix создавалась в несколько этапов. Все начиналось в 1965-69 гг. в Bell Labs концерна AT&T в рамках проекта MULTICS (Multi-user Timesharing Interactive Computing System) для большой машины General Electric GE-645. В то время AT&T могла разрабатывать, но не продавать компьютерные продукты, в результате действующих в США антимонопольных законов. От Bell Labs в проекте принимали участие два сотрудника - Кен Томпсон и Деннис Ритчи.

В 1969 г. Bell Labs решает выйти из проекта MULTICS, чтобы сосредоточить усилия на создание мобильной операционной среды под условным UNIX.

Первоначально UNIX написана на ассемблере для DEC PDP-7. Затем к работе по этому проекту был привлечен Денис Ритчи, который в то время уже разработал язык B. В 1973 г. он предложил переписать основную часть UNIX на B. В процессе осуществления этой идеи, язык B настолько усовершенствовался, что преобразился в C. Таким образом, было достигнуто невиданное тогда качество - мобильность. В отличии от всех предыдущих ОС, на 100 процентов написанных на ассемблере для определенной машины, UNIX имела только 10 процентов (1000 строк) кода на ассемблере. Для того чтобы работать на произвольной машине, новая ОС нуждалась в написании нескольких страничек ассемблере и компиляторе языка C. Уже в 1976 г. в первый раз UNIX была перенесена на другую машину - Interdata 8/32.

В 1971 г. торговая марка UNIX была запатентована Bell Labs для серии машин DEC PDP -11/20, наиболее распостраненных в университетах. За несколько лет UNIX претерпела в Bell несколько изданий, из которых наиболее популярны были шестое (1976 г.) и седьмое (1979 г.).

Нарастающая популярность UNIX заставила Калифорнийский университет в Беркли предложить свой вариант UNIX - BSD (Berkeley Software Distribution), на базе которого по заказу DARPA (Агентство перспективных проектов военного ведомства США) компания BBN реализовала в системе BSD 4.1 протоколы TCP/IP. Так возникла сеть Интернет.

Необходимо вспомнить и разработанную в Массачусетском технологическом институте систему X-Window (1984 г.). Основанная на TCP/IP, она обеспечивает мобильный графический интерфейс, к которому прилагается концепция "клиент - сервер", наиболее революционная для своего времени. Сегодня UNIX и X-Window почти неразделимы. В это же время начались попытки стандартизации. Известный американский институт инженеров по электротехнике и электронике (IEEE), создал рабочую группу 1003, которая разработала стандарт переносимой системы (Portable Operating System). Имя этого стандарта - POSIX, который прежде всего относится к ОС UNIX.

В 1990 г. документ POSIX 1003.1 c редакционными изменениями был принят в качестве стандарта ISO. Другими наиболее значительными стандартами POSIX, относящимися к UNIX, являются: POSIX 1003.2 - 1992 г., POSIX 1003.1b - 1993 г., POSIX 1003.1c - 1995 г.

Другим опытом стандартизации UNIX является документ X/Open Portability Guide. Популярно третье издание - XPG3 (1989 г.), которое основано на POSIX 1003.1, но содержит и ряд новых элементов, рассматривающих не только ОС, но и потребительский интерфейс, базы данных, коммуникаций.

Шагом к стандартизации UNIX является появление в 1989 г. ANSI - стандарта для языка C (16 лет спустя после его рождения).

Долгим и тернистым был UNIX на рынок программных средств. Считается, что только с 1 января 1984 г. дочерняя компания AT&T Bell Labs (позднее переименованная в USL - UNIX System Laboratories) вышла на рынок с UNIX в качестве торгового продукта.

Под благовидным предлогом стандартизации UNIX AT&T ввел SVID (System V Interface Definition) и этим ходом вновь отождествил UNIX со своей System V (1983 г.).

Другим важным событием стало соглашение AT&T с ведущими UNIX -производителями Sun и Microsoft в 1987 г. о так называемой унификации UNIX. Проект предусматривал создание четвертого издания System V (SVR4), которая объединяла характеристики Xenix Microsoft (другое название UNIX для микрокомпьютеров, основанной на седьмом издании и испытавшей сильное влияние System V), sunOS (система UNIX фирмы Sun Microsystems, основанной на BSD) и System V 3.2. В 1987 г. AT&T в первый раз лицензировала имя UNIX.

В мае следующего года несколько ведущих компаний, среди которых были Apollo, Bull, HP, IBM и Siemens, учредили Фонд открытых систем OSF (Open Software Foundation) - организацию с целью разработки и распространения открытых программных систем. Она финансировала разработки программного обеспечения в соответствии с наиболее современными требованиями к открытым системам, специфицированными в соответствующих стандартах для разработки: системный интерфейс OSF/AES, графический потребительский интерфейс OSF/Motif, распределенные системы OSF/DCE и т.д.

Основой проекта является выбор UNIX - технологии. После внимательного изучения выбрали ядро Match, разработанное в университете Карнеги-Меллон (100000 строк исходного кода; код первой UNIX, код первой UNIX был на порядок скромнее), а все остальное (OSF -1 имеет в общем около 800000 строк кода) предлагалось взять из IBM AIX третьей версии.

Выбор AIX не понравился AT&T. Концерну было предлoжено принять членство OSF, но он поставил неприемлемое условие заменить AIX на SVR4. В результате AT&T, Sun, UNISYS, XEROX и др. создали в марте 1989 г. организацию UNIX International (UI), которая дала широкую дорогу USL. Разработка и лецензирование програм оставались привилегией USL, но общий контроль был сохранен за AT&T. Взаимные столкновения и несовместимость продуктов OSF и UI явилась кульминационным пунктом в так называемых UNIX-войнах.

В 1993 г компания AT&T продала свою долю прав на UNIX фирме Novell. За это время фирма Novell выпустила собственные версии UNIX на базе System V версии 4, получившие название UNIXWare. UNIXWare предназначена для взаимодействия с системой NetWare разработки Novell.

В декабре 1995 г. компания Santa Crouze Operation купила у Novell патенты на все ее UNIX - продукты, включая OC UNIXWare и исходный код UNIX System V.

В последнее время все большую популярность приобретает свободно распостраняемая версия UNIX под названием Linux, разработанная исследователем университета Хельсинки Линусом Торвальдсом. Разработанная в 1991 г. для процессора Intel i386, сегодня она перенесена на ряд других аппаратных платформ.

Краткое описание UNIX

Было создано большое количество различных UNIX-систем. Юридически лишь некоторые из них имеют полное право называться «UNIX»; остальные же, хотя и используют сходные концепции и технологии, объединяются термином «UNIX-подобные» (англ. Unix-like).

Некоторые отличительные признаки UNIX-систем включают в себя:

использование простых текстовых файлов для настройки и управления системой;

широкое применение утилит, запускаемых в командной строке;

взаимодействие с пользователем посредством виртуального устройства -- терминала;

представление физических и виртуальных устройств и некоторых средств межпроцессового взаимодействия как файлов;

использование конвейеров из нескольких программ, каждая из которых выполняет одну задачу.

В настоящее время UNIX-системы используются в основном на серверах, а также как встроенные системы для различного оборудования. На рынке ОС для рабочих станций и домашнего применения лидером является Microsoft Windows, UNIX занимает только второе (Mac OS X), третье (GNU/Linux) и многие последующие места.

UNIX-системы имеют большую историческую важность, поскольку благодаря им распространились некоторые популярные сегодня концепции и подходы в области ОС и программного обеспечения. Также, в ходе разработки Unix-систем был создан язык Си.

Особенности UNIX, отличающие данное семейство от других ОС приведены ниже.

Файловая система древовидная, чувствительная к регистру символов в именах, очень слабые ограничения на длину имён и пути.

Нет поддержки структурированных файлов ядром ОС, на уровне системных вызовов файл есть поток байтов.

Командная строка находится в адресном пространстве запускаемого процесса, а не извлекается системным вызовом из процесса интерпретатора команд (как это происходит, например, в RSX-11).

Понятие «переменных окружения».

Запуск процессов вызовом fork(), то есть возможность клонирования текущего процесса со всем состоянием.

Понятия stdin/stdout/stderr.

Ввод/вывод только через дескрипторы файлов.

Традиционно крайне слабая поддержка асинхронного ввода/вывода, по сравнению с VMS и Windows NT.

Интерпретатор команд есть обыкновенное приложение, общающееся с ядром обыкновенными системными вызовами (в RSX-11 и VMS интерпретатор команд выполнялся как специальное приложение, специальным образом размещенное в памяти, пользующееся специальными системными вызовами, поддерживались также системные вызовы, дающие возможность приложению обращаться к своему родительскому интерпретатору команд).

Команда командной строки есть не более чем имя файла программы, не требуется специальная регистрация и специальная разработка программ как команд (что являлось обычной практикой в RSX-11, RT-11).

Не принят подход с программой, задающей пользователю вопросы о режимах своей работы, вместо этого используются параметры командной строки (в VMS, RSX-11, RT-11 программы работали также с командной строкой, но при её отсутствии выдавали запрос на ввод параметров).

Пространство имён устройств на диске в каталоге /dev, поддающееся управлению администратором, в отличие от подхода Windows, где это пространство имен размещается в памяти ядра, и администрирование этого пространства (например, задание прав доступа) крайне затруднено из-за отсутствия его постоянного хранения на дисках (строится каждый раз при загрузке).

Широкое использование текстовых файлов для хранения настроек, в отличие от двоичной базы данных настроек, как, например, в Windows.

Широкое использование утилит обработки текста для выполнения повседневных задач под управлением скриптов.

«Раскрутка» ОС после загрузки ядра путём исполнения скриптов стандартным интерпретатором команд.

Широкое использование конвейеров (pipe).

Все процессы, кроме init, равны между собой, не бывает «специальных процессов».

Адресное пространство делится на глобальное для всех процессов ядро и на локальную для процесса части, нет «групповой» части адресного пространства, как в VMS и Windows NT, как и возможности загрузки туда кода и его исполнения там.

Использование двух уровней привилегий процессора вместо четырёх в VMS.

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

Отсутствие APC и аналогов, то есть произвольных (а не жестко перечисленных в стандартном множестве) сигналов, не доставляемых до явного пожелания процесса их получить (Windows, VMS).

Концепция сигнала уникальна для UNIX, и крайне сложна в переносе на другие ОС, такие как Windows.

История GNU/Linux

операционная система информационный

GNU

К 1990 году в рамках проекта GNU, основанного Ричардом Столлманом, были разработаны и постоянно развивались свободные программы, составляющие основной инструментарий для разработки программ на языке Си: текстовый редактор Emacs, компилятор языка Си gcc, отладчик программ gdb, командная оболочка bash, библиотека важнейших функций для программ на Си libc. Все эти программы были написаны для операционных систем, похожих на UNIX. Поэтому в них использовались стандартные для UNIX системные вызовы -- POSIX. При помощи системных вызовов программы получают доступ к оперативной памяти, файловой системе, устройствам ввода и вывода. Благодаря тому, что системные вызовы выглядели более-менее стандартно во всех реализациях UNIX, программы GNU могли работать (с минимальными изменениями или вообще без изменений) в любой UNIX-подобной операционной системе.

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

Linux -- ядро

В 1991 году Линус Торвальдс, финский студент, чрезвычайно увлёкся идеей написать совместимое с UNIX ядро операционной системы для своего персонального компьютера с процессором ставшей очень широко распространённой архитектуры Intel 80386. Прототипом для будущего ядра стала операционная система MINIX: совместимая с UNIX операционная система для персональных компьютеров, которая загружалась с дискет и умещалась в очень ограниченной в те времена памяти персонального компьютера. MINIX был создан Эндрю Таненбаумом в качестве учебной операционной системы, демонстрирующей архитектуру и возможности UNIX, но непригодной для полноценной работы с точки зрения программиста[источник не указан 916 дней]. Именно полноценное ядро для своего ПК и хотел сделать Линус Торвальдс. Название своему ядру он дал freax, но позже оно было изменено хозяином ftp сервера на Linux -- гибрид имени создателя и слова UNIX.

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

Важнейшую роль в развитии Linux сыграли глобальные компьютерные сети Usenet и Internet. На самых ранних стадиях Линус Торвальдс обсуждал свою работу и возникающие трудности с другими разработчиками в телеконференции comp.os.minix в сети Usenet, посвящённой операционной системе MINIX. Ключевым решением Линуса стала публикация исходных текстов ещё малоработоспособной первой версии ядра под свободной лицензией GNU GPL. Благодаря этому и получавшей всё большее распространение сети Internet очень многие получили возможность самостоятельно компилировать и тестировать это ядро, участвовать в обсуждении и исправлении ошибок, а также присылать исправления и дополнения к исходным текстам Линуса. Теперь над ядром работал уже не один человек, разработка пошла быстрее и эффективнее.

В 1992 году версия ядра Linux достигла 0.95, а в 1994 году вышла версия 1.0, что свидетельствовало о том, что разработчики наконец сочли, что ядро в целом закончено и все ошибки (теоретически) исправлены. В настоящее время разработка ядра Linux -- дело уже гораздо большего сообщества, чем во времена до версии 1.0. Изменилась и роль самого Линуса Торвальдса: теперь он не главный разработчик, а наиболее авторитетный член сообщества, по традиции оценивающий качество исходных текстов, которые должны быть включены в ядро, и дающий своё добро на их включение. Тем не менее, общая модель свободной разработки сообществом сохраняется.

GNU и Linux

Однако как нельзя сделать операционную систему без ядра, так и ядро будет бесполезно без утилит, которые использовали бы его возможности. Благодаря проекту GNU Линус Торвальдс сразу получил возможность использовать с Linux свободные утилиты: bash, компилятор gcc, tar, gzip и многие другие уже известные и широко используемые приложения, которые могли работать с его UNIX-совместимым ядром. Так Linux сразу попал в хорошее окружение и в сочетании с утилитами GNU представлял собой очень интересную среду для разработчиков программного обеспечения даже на самой ранней стадии своего развития.

Принципиальным шагом вперёд было именно то, что из ядра Linux и утилит и приложений GNU впервые стало возможно сделать полностью свободную операционную систему, то есть работать с компьютером и, более того, разрабатывать новое программное обеспечение, пользуясь только свободным программным обеспечением. Идеал полностью некоммерческой разработки, сформулированный Столлманом, теперь мог быть воплощён в жизнь.

Вскоре появлялись теоретические возможности воплощения идеала, но это не означало его немедленной практической реализации. Совместимость Linux и утилит GNU была обусловлена тем, что и то, и другое писалось с ориентацией на одни и те же стандарты и практику. Однако в рамках этой практики (то есть при наличии множества различных UNIX-систем) оставался большой простор для несовместимости и различных решений. Поэтому на начальном этапе разработки ядра каждое заработавшее на Linux приложение GNU было для Линуса очередным достижением. Первыми стали bash и gcc. Таким образом, сочетание GNU и Linux давало возможность создать свободную операционную систему, но само по себе ещё не составляло такой системы, потому что Linux и различные утилиты GNU оставались разрозненными программными продуктами, написанными разными людьми, не всегда принимавшими в расчёт то, что делали другие. Основным же свойством любой системы является согласованность её компонентов.

MS-DOS -- коммерческая операционная система фирмы Microsoft для IBM PC-совместимых персональных компьютеров. MS-DOS -- самая известная ОС из семейства DOS, ранее устанавливавшаяся на большинство IBM PC-совместимых компьютеров. Со временем она была вытеснена ОС семейства Windows 9x и Windows NT.

MS-DOS была создана в 1981 году и в ходе её развития было выпущено восемь крупных версий (1.0, 2.0 и т. д.) и два десятка промежуточных (3.1, 3.2 и т. п.), пока в 2000 году Microsoft не прекратила её разработку. Это был ключевой продукт фирмы, дававший ей существенный доход и маркетинговый ресурс в ходе развития Microsoft от разработчика языка программирования до крупной компании, производящей самое разнообразное программное обеспечение.

Последней коробочной версией стала 6.22, однако MS-DOS продолжала служить загрузчиком для Windows 95 (версии 7.0 и 7.1), Windows 98 (версия 7.1) и Windows ME (версия 8.0).

История создания MS-DOS

Трагедия Гари Килдалла. Эпоха CP/M

К концу 1970-х операционная система CP/M стала промышленным стандартом де-факто на рынке 8-разрядных микрокомпьютеров, под нее разрабатывалась большая часть программного обеспечения. По некоторым данным, общее число реализованных копий за все время существования CP/M составляет более 1,5 млн. Ее повсеместная востребованность объяснялась в первую очередь наличием встроенной поддержки дисководов с гибкими магнитными дисками. Использование же последних было оправдано удобством произвольного доступа к данным -- в отличие от той же магнитной ленты. Между тем стабильная и прибыльная монополия CP/M была практически в одночасье разрушена с рождением 12 августа 1981 г. IBM PC -- первого удачного персонального компьютера от IBM.

История CP/M началась с того, что Гари Килдалл (Gary Kildall) в 1972 г. по чистой случайности приобрел за 25 долл. 4-разрядный микропроцессор Intel 4004. Создав ряд программ для навигационных расчетов, Килдалл пробует заинтересовать Intel своими разработками. Руководство компании положительно оценивает способности Гари и берет его на работу в качестве консультанта. К концу 1973 г. Килдалл придумывает язык программирования PL/M (Programming Language for Microcomputers), объединяющий идеи PL/I, Алгола и XPL. Немного позже он начинает создание версии PL/M для процессора 8080. Однако компьютер Intellec-8, на котором работает Гари по поручению Intel, обладал довольно скромной конфигурацией (клавиатура, монитор, считыватель с перфоленты). И Килдалл приходит к выводу о необходимости использования дисковода с гибкими магнитными дисками. Да, это было действительно революционной идеей.

В сотрудничестве с Аланом Шугартом (Alan Shugart), изобретателем гибкого диска, и Джоном Тородом (John Torod), своим однокурсником, Килдалл подключает к Intellec-8 дисковод, снабженный контроллером. После этого он приступает к созданию операционной системы как набора сервисных программ для организации обмена данными с памятью и дисками на уровне более высоком, чем прямое аппаратное программирование. Через два месяца ядро операционной системы было готово. Свое детище Гари решил назвать CP/M -- Control Program/Monitor, это уже потом аббревиатура стала расшифровываться как Control Program/Microcomputer.

В последующем Килдалл постоянно дорабатывает CP/M, снабжая ее дополнительными средствами и сервисными утилитами. Со временем он создает варианты CP/M и для других процессоров. Самое удивительное, что руководство Intel абсолютно не заинтересовалось появлением CP/M, хотя компания имела грандиозные планы в отношении PL/M. В дальнейшем Килдалл организует собственную компанию Digital Research, отдавая большую часть времени работе над CP/M. Между тем судьба уготовила Килдаллу сюрприз, причем довольно неприятный.

В 1980 г., исходя из текущей рыночной ситуации, корпорация IBM решает построить собственный 16-разрядный персональный компьютер, подобный популярному Apple, с похожим программным обеспечением. И для этого, разумеется, нужна была операционная система. Однако на тот момент версии CP/M были исключительно 8-разрядными. Параллельно с этим корпорация IBM задумывается и о наборе ПО для проектируемого ПК. Зная об успешных разработках Microsoft (несколько версий Бейсика, Кобола и Фортрана для различных компьютерных систем), IBM встречается с Биллом Гейтсом, попросив того высказать свои соображения в отношении будущего ПК. Гейтс, конечно же, предлагает голубому гиганту приобрести у него Бейсик. А на вопрос об операционной системе советует обратиться к Гари Килдаллу -- автору CP/M. Но тот медлит, а Гейтс не упускает свой шанс: он отсылает в IBM письмо, в котором убеждает компанию использовать в создаваемом компьютере 16-разрядный микропроцессор Intel 8088, а не 8-разрядный. В дальнейшем письмо позволит ему склонить чашу весов в выборе IBM на свою сторону, так как это предполагает, что CP/M Гари Килдалла изначально выполнена для 8-разрядных машин, а ОС от Microsoft «заточена» якобы под 16-разрядные компьютеры. Разумеется, Гейтс обещает поставить IBM нужную ей операционную систему в должные сроки.

Тем временем Пол Аллен, соратник Гейтса, приобретает операционную систему QDOS Тима Патерсона (Tim Paterson), никому не известного программиста из фирмы Seattle Computer Products. И вновь судьба-злодейка выставила всех участников этой истории в странном, искаженном свете: QDOS оказывается невероятно похожей на СР/М Гари Килдалла.

История Тима Патерсона. Период 86-DOS

Хотя доподлинно известно, что MS-DOS приобрела популярность благодаря успеху IBM PC, корни ее берут начало в первых поколениях микрокомпьютеров. Так, первые, широко распространенные микрокомпьютеры были построены на аппаратной части, использующей так называемую шину S-100. Начало этому было положено с появлением в 1976 г. разработанного предприятием MITS (Microwave Instrumentation and Telemetry Systems) компьютера Altair 8800. Конструктивной особенностью системной платы Altair было отсутствие на ней каких-либо жестко встроенных модулей -- по сути, она имела только ряд 100-контактных разъемов (шин S-100), необходимых для подключения других плат. В роли последних выступали как непосредственно основные элементы компьютера (процессор, память), так и дополнительные (терминал, последовательные и параллельные интерфейсы, адаптеры клавиатуры, дисплея, магнитофона). Фактически пользователь мог выбрать конфигурацию Altair по своему усмотрению: расширить память, модернизировать процессор, добавить новые функции. Именно она, шина S-100, обеспечила поразительную популярность Altair 8800, обусловленную гибкостью его конструкции. Только благодаря концепции S-100 появилось множество фирм и предприятий, разрабатывающих платы для Altair.

В 1978 г. небольшая фирма Seattle Computer Products (SCP), располагающаяся в городе Туквила (Tukwila), шт. Вашингтон, начала производство карт памяти для шины S-100. Часть своей продукции SCP реализовывала посредством специализирующегося на компьютерах магазина в Сиэтле -- The Retail Computer Store. В этом магазине работает техником Тим Патерсон, одновременно учащийся в Университете Вашингтона (University of Washington). Примечательным для нашей истории оказался один факт биографии Тима: он очень хорошо разбирался в компьютере Imsai 8080.

Однажды, когда владелец SCP Род Брок (Rod Brock) в очередной раз приехал в магазин забрать новые заказы от покупателей, они разговорились. Брок пожаловался Патерсону на ряд проблем, возникающих при использовании производимых SCP плат памяти. Тим высказал по этому поводу несколько толковых идей, Брок же взял парня на заметку и после окончания университета предложил Патерсону работу в SCP, где тот, согласившись на зарплату в 50 долл. в день, и пытался найти решение задачи.

Персональный компьютер Altair 8800 (1975, 397 долл.): сколько же талантов он воспитал?

В июле 1978 г. появляется микропроцессор Intel 8086. Опытный Брок посылает Тима на интеловский семинар, посвященный новому продукту. Заметим, что подавляющее большинство тогдашних компьютеров со схемой

S-100 базировалось либо на Intel 8080, либо на Zilog Z-80. Процессор 8086 был потенциально быстрее своих предшественников, хотя и не мог выполнять существующие 8-разрядные программы.

Будучи достаточно прозорливым, Брок дает Патерсону задание разработать плату с процессором 8086 для шины S-100. Первые удачные прототипы появились уже в мае 1979 г. Тогда же SCP обращается в Microsoft с просьбой подумать о создании 16-разрядного ПО для нового компьютера компании. Так уж случилось, что в самой Microsoft уже какое-то время велись разработки программ для 8086. В итоге прототипы SCP снабжаются 16-разрядной автономной дисковой версией Бейсика от Microsoft.

В ноябре 1979 г. SCP начинает продажи своих компьютеров на базе Altair и процессора 8086 с установленным интерпретатором Бейсика от Microsoft. Между тем Бейсик, являясь скорее игрушкой, чем полноценным языком программирования, не предлагал каких-либо удачных средств для написания стороннего коммерческого ПО, поэтому Брок принимает решение о создании операционной системы для своих компьютеров.


Подобные документы

  • Эволюция и классификация ОС. Сетевые операционные системы. Управление памятью. Современные концепции и технологии проектирования операционных систем. Семейство операционных систем UNIX. Сетевые продукты фирмы Novell. Сетевые ОС компании Microsoft.

    творческая работа [286,2 K], добавлен 07.11.2007

  • История появления первых операционных систем, мультипрограммные операционные системы для мэйнфреймов. Первые локальные и глобальные сети. Развитие операционных систем в 80-е годы. Построение двумерных графиков в MathCAD, решение систем уравнений.

    контрольная работа [559,1 K], добавлен 11.06.2014

  • Понятие операционной системы. История ее создания и развития. Разновидности современных операционных систем. Основные функции ОС общего и специального назначения. Вычислительные и операционные системы, их функции. Генерация операционной системы.

    курсовая работа [46,8 K], добавлен 18.06.2009

  • Назначение и функции операционных систем компьютера. Аппаратные и программные ресурсы ЭВМ. Пакетные ОС. Системы с разделением времени: Multics, Unix. Многозадачные ОС для ПК с графическим интерфейсом: Windows, Linux, Macintosh. ОС для мобильных устройств.

    курсовая работа [53,4 K], добавлен 05.12.2014

  • Характеристика, функции, типы, виды и состав операционных систем. Первая коммерческая система unix system. Операционные системы, основанные на графическом интерфейсе, пи–система, семейство unix. История и основные предпосылки появления ОС Windows.

    курсовая работа [66,9 K], добавлен 18.01.2011

  • Основные классификации операционных систем. Операционные системы семейства OS/2, UNIX, Linux и Windows. Разграничение прав доступа и многопользовательский режим работы. Пользовательский интерфейс и сетевые операции. Управление оперативной памятью.

    реферат [22,8 K], добавлен 11.05.2011

  • Однопроцессорные вычислительные системы не справляются с решением военно-прикладных задач в реальном времени, поэтому для повышения производительности вычислительных систем военного назначения используются многопроцессорные вычислительные системы (МВС).

    реферат [70,1 K], добавлен 30.05.2008

  • Особенности современного этапа развития операционных систем. Назначение операционных систем, их основные типы. Операционные системы мини-компьютеров. Принцип работы матричного принтера, проектирование и воспроизведение произвольных символов для них.

    курсовая работа [258,2 K], добавлен 23.06.2011

  • Операционные системы пакетной обработки, разделения времени, реального времени. Особенности алгоритмов управления ресурсами. Поддержка многопользовательского режима. Вытесняющая и невытесняющая многозадачность. Операционные системы и глобальные сети.

    реферат [55,0 K], добавлен 11.12.2011

  • Важность операционной системы для мобильных устройств. Популярность операционных систем. Доля LINUX на рынке операционных систем. История OS Symbian, BlackBerry OS, Palm OS. Отличия смартфона от обычного мобильного телефона. Учет ограничений по памяти.

    презентация [477,3 K], добавлен 01.12.2015

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.