Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

1.1 История создания, назначение. 5



СОДЕРЖАНИЕ

 

ВВЕДЕНИЕ. 3

1 Основная часть отчета. 5

1.1 История создания, назначение. 5

1.2 Функциональные характеристики. 12

1.3 Особенности архитектуры ОС UNIX.. 13

1.4 Способы управления процессами и ресурсами. 15

1.5 Условия эксплуатации. 19

1.6 Принципы защиты.. 20

1.7 Перспективные ОС, поддерживающие среду ОС UNIX.. 23

1.8 Области применения Unix. 25

2 Сравнение операционных систем семейства Unix и Windows. 28

ЗАКЛЮЧЕНИЕ. 30

Список использованной литературы.. 33

 

 

 

ВВЕДЕНИЕ

 

Цель данной работы: Операционная система Unix, Архитектура и ядро системы. Отличия от операционных систем семейства Windows.

Задачи: В своей работе я расскажу о истории развития Unix.

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

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

UNIX появилась в 1969 году. За 30 с лишним лет система стала довольно популярной и получила распространение на машинах с различной мощностью обработки, от микропроцессоров до больших ЭВМ, обеспечивая на них общие условия выполнения программ. Система делится на две части. Одну часть составляют программы и сервисные функции – это делает операционную среду UNIX такой популярной; данная часть ОС легко доступна пользователям, она включает такие программы, как командный процессор, обмен сообщениями, пакеты обработки текстов и системы обработки исходных текстов программ. Другая часть включает в себя собственно операционную систему, поддерживающую эти программы и функции.

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

Системы Windows прошли сложный путь от примитивных графических оболочек до вполне современных операционных систем. Разрабатывать менеджер интерфейса (Interface Manager, впоследствии - Microsoft Windows) Microsoft начала в сентябре 1981 года. Хотя первые опытные образцы были выполнены на основе так называемых Multiplan- и Word-like-меню, в 1982 году элементы интерфейса успешно были изменены на ниспадающие меню и диалоговые окна.



 

1 Основная часть отчета

 

1.1 История создания, назначение

UNIX это: Торговая марка компании Santa Cruz Operation.

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

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

Рисунок 1 - Кен Томпсон и Деннис Ритчи - создатели UNIX

 

Сегодня описанные границы не так четки. Рост графических интерфейсов

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

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

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

как условно-бесплатные или вообще бесплатные. Хотя все варианты UNIX и отличаются друг от друга до некоторой степени, но в основе своей представляют собой одну и ту же среду. Все они предлагают собственные версии наиболее распространенных утилит, прикладных программ и языков. Те, кто использует awk, grep, оболочку Bourne или make в одной из версий UNIX, обнаружат их и на других машинах UNIX.

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

ми. В среде UNIX это практично, поскольку архитектура ядра UNIX специа-

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

UNIX зародился в лаборатории Bell Labs фирмы AT&T более 30 лет назад. В то время Bell Labs занималась разработкой многопользовательской системы разделения времени MULTICS (Multiplexed Information and Computing Service) совместно с MIT и General Electric, но эта система потерпела неудачу. Bell Labs отказалась от участия в проекте MULTICS, что дало возможность одному из ее исследователей, Кену Томпсону, заняться поисковой работой в направлении улучшения операционной среды Bell Labs. Томпсон, а также сотрудник Bell Labs Денис Ритчи и некоторые другие разрабатывали новую файловую систему, многие черты которой вели свое происхождение от MULTICS. Для проверки новой файловой системы Томпсон написал ядро ОС и некоторые программы для компьютера GE-645, который работал под управлением мультипрограммной системы разделения времени GECOS. У Кена Томпсона была написанная им еще во времена работы над MULTICS игра "Space Travel" - "Космическое путешествие". Он запускал ее на компьютере GE-645, но она работала на нем не очень хорошо из-за невысокой эффективности разделения времени. Кроме этого, машинное время GE-645 стоило слишком дорого. В результате Томпсон и Ритчи решили перенести игру на машину PDP-7 фирмы DEC, имеющую 4096 18-битных слов, телетайп и хороший графический дисплей. Но у PDP-7 было неважное программное обеспечение, и, закончив перенос игры, Томпсон решил реализовать на PDP-7 ту файловую систему, над который он работал на GE-645. Из этой работы и возникла первая версия UNIX. Уже тогда она включала характерную для современной UNIX файловую систему, основанную на индексных дескрипторах inode, имела подсистему управления процессами и памятью, а также позволяла двум пользователям работать в режиме разделения времени. Система была написана на ассемблере. Имя UNIX (Uniplex Information and Computing Services) было дано ей одним сотрудником Bell Labs, Брайаном Керниганом. На рисунке-2 Генеалогическое древо Unix.

Первыми пользователями UNIX'а стали сотрудники отдела патентов Bell Labs, которые нашли ее удобной средой для создания текстов. Большое влияние на судьбу UNIX оказала перепись ее на языке высокого уровня С, разработанного Денисом Ритчи специально для этих целей. Это произошло в 1973 году, UNIX насчитывал к этому времени уже 25 инсталляций, и в Bell Labs была создана специальная группа поддержки UNIX.

 

 

Рисунок 2 - Генеалогическое древо UNIX-систем

 

В 1957 году в Bell Labs была начата работа по созданию операционной системы для внутренних нужд. Под руководством Виктора Высотского (русского по происхождению) была создана система BESYS. Впоследствии он возглавил проект Multics, а затем стал главой информационного подразделения Bell Labs.

В 1964 году появились компьютеры третьего поколения, для которых возможности BESYS уже не подходили. Высотский и его коллеги приняли решение не разрабатывать новую собственную операционную систему, а подключиться к совместному проекту General Electric и MIT — Multics. Телекоммуникационный гигант AT&T, в состав которого входила Bell Labs, оказал проекту существенную поддержку, но в 1969 году вышел из него, поскольку проект не приносил финансовых выгод.

В 1969 году Кен Томпсон, стремясь реализовать идеи, которые были положены в основу MULTICS, но на более скромном аппаратном обеспечении (DEC PDP-7), написал первую версию новой операционной системы, а Брайан Керниган придумал для неё название — UNICS (UNIplexed Information and Computing System — Примитивная информационная и вычислительная служба) — в противовес MULTICS (MULTIplexed Information and Computing Service). Позже название сократилось до UNIX.

В ноябре 1971 года вышла версия для PDP-11, наиболее успешного семейства миникомпьютеров 1970-х (в СССР его аналоги, выпускавшиеся Министерством электронной промышленности были известно как СМ ЭВМ и Электроника, позже ДВК, производились в Киеве, Воронеже, Зеленограде). Эта версия получила название «первая редакция» (Edition 1) и была первой официальной версией. Системное время все реализации UNIX отсчитывают с 1 января 1970 года.

Первые версии UNIX были написаны на ассемблере и не имели встроенного компилятора с языком высокого уровня. Примерно в 1969 году Кен Томпсон при содействии Денниса Ритчи разработал и реализовал язык Би (B), представлявший собой упрощённый (для реализации на миникомпьютерах) вариант разработанного в 1966 языка BCPL. Би, как и BCPL, был интерпретируемым языком. В 1972 году была выпущена вторая редакция UNIX, переписанная на языке Би. В 1969—1973 годах на основе Би был разработан компилируемый язык, получивший название Си (C).

В 1973 году вышла третья редакция UNIX, со встроенным компилятором языка Си. 15 октября того же года появилась четвёртая редакция, с переписанным на Си системным ядром (в духе системы Multics, также написанной на языке высокого уровня ПЛ/1), а в 1975 — пятая редакция, полностью переписанная на Си.

С 1974 года UNIX стал распространяться среди университетов и академических учреждений. С 1975 года началось появление новых версий, разработанных за пределами Bell Labs, и рост популярности системы. В том же 1975 году Bell Labs выпустила шестую редакцию, известную по широко

разошедшимся комментариям Джона Лайонса.

К 1978 году система была установлена более чем на 600 машинах, прежде всего, в университетах. Седьмая редакция была последней единой

версией UNIX. Именно в ней появился близкий к современному интерпретатор командной строки Bourne shell.

В начале 1980-х компания AT&T, которой принадлежала Bell Labs, осознала ценность UNIX и начала создание коммерческой версии ОС. Эта версия, поступившая в продажу в 1982 году, носила название UNIX System III и была основана на седьмой версии системы.

Однако, компания не могла напрямую начать развитие UNIX как коммерческого продукта из-за запрета, наложенного правительством США в 1956 году. юстиции вынудило AT&T подписать соглашение, запрещавшее компании заниматься деятельностью, не связанной с телефонными и телеграфными сетями и оборудованием. Для того, чтобы всё-таки иметь возможность перевести UNIX в ранг коммерческих продуктов, компания передала исходный код операционной системы некоторым высшим учебным заведениям, лицензировав код под очень либеральными условиями.

В декабре 1973 года одним из первых исходные коды получил университет Беркли.

С 1978 года начинает свою историю BSD UNIX, созданный в университете Беркли. Его первая версия была основана на шестой редакции.

В 1979 выпущена новая версия, названная 3BSD, основанная на седьмой редакции. BSD поддерживал такие полезные свойства, как виртуальную память и замещение страниц по требованию. Автором BSD был Билл Джой.

Важной причиной раскола UNIX стала реализация в 1980 году стека протоколов TCP/IP. До этого межмашинное взаимодействие в UNIX пребывало в зачаточном состоянии — наиболее существенным способом связи был UUCP (средство копирования файлов из одной UNIX-системы в другую, изначально работавшее по телефонным сетям с помощью модемов).

Было предложено два интерфейса программирования сетевых приложений: Berkley sockets (сокет Беркли) и интерфейс транспортного уровня TL.

В середине 1983 года была выпущена версия BSD 4.2, поддерживающая работу в сетях Ethernet и Arpanet. Система стала весьма популярной. Между 1983 и 1990 годом в BSD было добавлено много новых возможностей, таких как отладчик ядра, сетевая файловая система NFS, виртуальная файловая система VFS, и существенно улучшены возможности работы с файловыми сетями.

Тем временем AT&T выпускала новые версии своей системы, названной System V. В 1983 была выпущена версия 1 (SVR1 — System V Release 1), включавшая полноэкранный текстовый редактор vi, библиотеку curses, буферизацию ввода-вывода, кеширование inode. Версия 2 (SVR2), выпущенная в 1984, реализовывала монопольный доступ к файлам доступ к

 

 

страницам по требованию (demand paging), копирование при записи (copy-on-write). Версия 3 вышла в 1987 году и включала, среди прочего, TLI, а также

систему поддержки удалённых файловых систем RFS. Версия 4 (SVR4), разработанная в сотрудничестве с фирмой Sun и вышедшая 18 октября 1988, поддерживала многие возможности BSD, в частности TCP/IP, сокеты, новый командный интерпретатор csh. Кроме того, там было много других добавлений, таких как символические ссылки, командный интерпретатор ksh, сетевая файловая система NFS (заимствованная у SunOS) и т. д.

В 1983 году Ричард Столлман объявил о создании проекта GNU — попытки создания свободной UNIX-подобной операционной системы с нуля, без использования оригинального исходного кода. Большая часть программного обеспечения, разработанного в рамках данного проекта, — такого как GNU toolchain, Glibc (стандартная библиотека языка Си) и Coreutils — играет ключевую роль в других свободных операционных системах. Однако работы по созданию замены для ядра UNIX, необходимые для полного выполнения задач GNU, продвигались крайне медленно. В настоящее время GNU Hurd — попытка создать современное ядро на основе микроядерной архитектуры Mach — всё ещё далека от завершения.

В 1991 году, когда Линус Торвальдс опубликовал ядро Linux и привлёк помощников, использование инструментов, разработанных в рамках проекта GNU, было очевидным выбором. Операционная система GNU и ядро Linux вместе составляют ОС, известную, как GNU/Linux. Дистрибутивы этой системы (такие как Red Hat и Debian), включающие ядро, утилиты GNU и дополнительное программное обеспечение стали популярными как среди любителей, так и среди представителей бизнеса.

Весь 1992 год никаких значительных успехов в судебной тяжбе для USL не принёс, зато появился встречный иск от Калифорнийского университета. К началу 1993 года дистрибутив 386/BSD поменял своё название на NetBSD. В декабре 1993 года появился другой дистрибутив — FreeBSD, нацеленный на простых пользователей. После приобретения USL компанией Novell к лету 1993 года начались переговоры по урегулированию статуса кодов BSD. К январю 1994 CSRG и Novell договорились удалить три файла из 18000 Networking Release 2, часть файлов должна быть подвергнута правке, а к примерно 70 файлам университет должен был добавить информацию о копирайте USL.

В июне 1994 года вышел «чистый» выпуск 4.4BSD-Lite. Вот с этого момента группы BSDI, NetBSD и FreeBSD должны были повторно синхронизировать свои версии систем с «чистой» системой 4.4BSD-Lite. Таким образом, все наработки, сделанные за три года с момента подачи иска USL, пришлось пересматривать на предмет нарушения авторских прав и использования стороннего кода. Переписывать важные составляющие ядра и операционного окружения. Значительно позднее выделились в самостоятельные проекты OpenBSD, TrustedBSD и DragonFlyBSD.

 

В 1997 году фирма Apple искала основу для своей новой операционной системы, она выбрала NEXTSTEP — операционную систему со свободно распространяемым ядром, разработанную фирмой NeXT.

В 2000 году Apple Inc. выпускает открытую POSIX-совместимую операционную систему Darwin. Она совмещает код, написанный самой Apple, с полученным от NeXTSTEP, FreeBSD и прочих свободных проектов. Darwin представляет собой набор основных компонентов, используемых в Mac OS X и Apple iOS. Он совместим с третьей версией спецификации единой UNIX (SUSv3) и POSIX-приложениями и утилитами.14 июня 2005 был открыт исходный код операционной системы Solaris. Этот проект, как и созданная на его основе операционная система, получили название OpenSolaris. 17 июня, через три дня после открытия кода, был создан дистрибутив SchilliX. В мае 2008 появился первый официальный дистрибутив OpenSolaris 2008.05. Существует более десяти дистрибутивов на основе OpenSolaris, наиболее известные из которых BeleniX и Nexenta OS.

.

 

1.2 Функциональные характеристики

 

К основным функциям ядра ОС UNIX принято относить следующие: Инициализация системы - функция запуска и раскрутки. Ядро системы обеспечивает средство раскрутки (bootstrap), которое обеспечивает загрузку полного ядра в память компьютера и запускает ядро. Управление процессами и нитями - функция создания, завершения и отслеживания существующих процессов и нитей ("процессов", выполняемых на общей виртуальной памяти). Поскольку ОС UNIX является мультипроцессной операционной системой, ядро обеспечивает разделение между запущенными процессами времени

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

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

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

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

1.3 Особенности архитектуры ОС UNIX

 

Архитектура ОС UNIX – многоуровневая (рис.1). На нижнем уровне, непосредственно над оборудованием, работает ядро операционной системы.

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

утилиты.

В старых Unix'ах отводилось 14 букв на имя, в новых это ограничение

 

снято. В директории кроме имени файла находится его идентификатор inode

– целое число, определяющее номер блока, в котором записаны атрибуты

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

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

Каждый файл (но не директория) может быть известен под несколькими именами, но обязательно лежащими на одном разделе. Все ссылки на файл равноправны; файл стирается, когда удаляется последняя ссылка на файл. Если файл открыт (для чтения и/или записи), то число ссылок на него увеличивается еще на единицу; так многие программы, открывающие временный файл, сразу удаляют его, чтобы при аварийном завершении, когда операционная система закрывает открытые процессом файлы, этот временный файл был удален операционной системой.

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

Файлы бывают следующих типов:

обычный файл прямого доступа;

директория (файл, содержащий имена и идентификаторы других фай

лов);

символьный линк (строка с именем другого файла);

блочное устройство (диск или магнитная лента);

последовательное устройство (терминалы, последовательные и парал

 

лельные порты; диски и магнитные ленты тоже имеют интерфейс последовательного устройства).

Иногда требуется, чтобы программа, запущенная пользователем, имела не права запустившего ее пользователя, а какие-то другие. В этом случае устанавливается атрибут смены прав на права пользователя - хозяина программы. (В качестве примера приведу программу, которая читает файл с вопросами и ответами и на основании прочитанного тестирует запустившего эту программу студента. Программа должна иметь право читать файл с ответами, а запустивший ее студент - нет) Так, например, работает программа passwd, с помощью которой юзер может изменить свой пароль. Юзер может запустить программу passwd, она может произвести изменения в системной базе данных - а пользователь не может.

В отличие от DOS, в котором полное имя файла выглядит как "диск: \путь\имя", и RISC-OS, в которой оно выглядит "-файловая система-диск: $. путь. имя" (что вообще говоря имеет свои преимущества), Unix использует прозрачную нотацию в виде "/путь/имя". Корень отсчитывается от раздела, с которого было загружено ядро Unix. Если мы собираемся использовать другой раздел (а на загрузочном разделе как правило находится только самое необходимое для загрузки), используется команда `mount /dev/файл раздела директория`. При этом файлы и поддиректории, ранее находившиеся в этой директории, становятся недоступными, пока раздел не будет размонтирован (естественно, все нормальные люди используют для монтирования разделов пустые директории). Производить монтирование и размонтирование имеет право только супервизор.

При запуске каждый процесс может рассчитывать, что для него уже открыты три файла, которые ему известны как стандартный ввод stdin по дескриптору 0; стандартный вывод stdout по дескриптору 1; и стандартный вывод stderr по дескриптору 2. При регистрации в системе, когда пользователь вводит имя и пароль, а ему запускается shell, все трое направлены на /dev/tty;

 

позже любой из них может быть перенаправлен в любой файл.

 

1.4 Способы управления процессами и ресурсами


Файлы и процессы, являются центральными понятиями модели операционной системы UNIX. Рисунок 3. представляет блок-схему ядра системы, отражающую состав модулей, из которых состоит ядро, и их взаимосвязи друг с другом.

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

 

 

Рисунок-3. Блок-схема ядра операционной системы

 

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

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

ции библиотеки связываются с программами и частично включаются в программу пользователя. Совокупность обращений к операционной системе разделена на те обращения, которые взаимодействуют с подсистемой управления файлами, и те, которые взаимодействуют с подсистемой управления процессами. Файловая подсистема управляет файлами, размещает записи файлов, управляет свободным пространством, доступом к файлам и поиском данных для пользователей. Процессы взаимодействуют с подсистемой управления файлами, используя при этом совокупность специальных обращений к операционной системе, таких как open (для того, чтобы открыть файл на чтение или запись), close, read, write, stat (запросить атрибуты файла), chown (изменить запись с информацией о владельце файла) и chmod (изменить права доступа к файлу).

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

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

устройство с произвольной выборкой. Подсистема управления файлами также непосредственно взаимодействует с драйверами устройств "неструктурированного" ввода-вывода, без вмешательства буферного механизма. К устр-

ойствам неструктурированного ввода-вывода, иногда именуемым устройствами посимвольного ввода-вывода (текстовыми), относятся устройства, от

личные от устройств ввода-вывода блоками.

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

Примерами обращений к операционной системе, используемых при управлении процессами, могут служить fork (создание нового процесса), exec (наложение образа программы на выполняемый процесс), exit (завершение выполнения процесса), wait (синхронизация продолжения выполнения основного процесса с моментом выхода из порожденного процесса), brk (управление размером памяти, выделенной процессу) и signal (управление реакцией процесса на возникновение экстраординарных событий.

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

и оказывает влияние на работу планировщика центрального процессора. «Планировщик» планирует очередность выполнения процессов до тех пор, пока они добровольно не освободят центральный процессор, дождавшись

выделения какого-либо ресурса, или пока ядро системы не выгрузит их после того, как их время выполнения превысит заранее определенный квант времени. Планировщик выбирает на выполнение готовый к запуску процесс с

наивысшим приоритетом; выполнение предыдущего процесса (приостановленного) будет продолжено тогда, когда его приоритет будет наивысшим

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

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

1.5 Условия эксплуатации

 

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

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

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

ющих файлом, трех уровней доступа (для пользователя-владельца, для поль

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

Для отслеживания владельцев процессов и файлов используются чис-

 

ловые идентификаторы. Идентификатор пользователя и группы - целое число

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

ра пользователя выполняется при заведении системным администратором нового регистрационного имени. Значения идентификатора пользователя и группы - не просто числа, которые идентифицируют пользователя, - они определяют владельцев файлов и процессов. Среди пользователей системы выделяется один пользователь - системный администратор или супер пользователь, обладающий всей полнотой прав на использование и конфигурирование системы. Это пользователь с идентификатором 0 и регистрационным именем root.

При представлении информации человеку удобнее использовать вместо соответствующих идентификаторов символьные имена - регистрационное имя пользователя и имя группы. Соответствие идентификаторов и символьных имен, а также другая информация о пользователях и группах в системе (учетные записи), как и большинство другой информации о конфигурации системы UNIX, по традиции, представлена в виде текстовых файлов. Эти файлы - /etc/passwd, /etc/group и /etc/shadow.

 

1.6 Принципы защиты

 

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

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

 

на качества систем с многоуровневой защитой).

С каждым выполняемым процессом в ОС UNIX связываются реальный идентификатор пользователя (real user ID), действующий идентификатор пользователя (effective user ID) и сохраненный идентификатор пользователя (saved user ID). Все эти идентификаторы устанавливаются с помощью системного вызова setuid, который можно выполнять только в режиме супер пользователя. Аналогично, с каждым процессом связываются три идентификатора группы пользователей - real group ID, effective group ID и saved group ID. Эти идентификаторы устанавливаются привилегированным системным вызовом setgid.

При входе пользователя в систему программа login проверяет, что пользователь зарегистрирован в системе и знает правильный пароль (если он установлен), образует новый процесс и запускает в нем требуемый для данного пользователя shell. Но перед этим login устанавливает для вновь созданного процесса идентификаторы пользователя и группы, используя для этого информацию, хранящуюся в файлах /etc/passwd и /etc/group. После того, как с процессом связаны идентификаторы пользователя и группы, для этого процесса начинают действовать ограничения для доступа к файлам. Процесс может получить доступ к файлу или выполнить его (если файл содержит выполняемую программу) только в том случае, если хранящиеся при файле ограничения доступа позволяют это сделать. Связанные с процессом идентификаторы передаются создаваемым им процессам, распространяя на них те же ограничения. Однако в некоторых случаях процесс может изменить свои права с помощью системных вызовов setuid и setgid, а иногда система может изменить права доступа процесса автоматически.

Рассмотрим, например, следующую ситуацию. В файл /etc/passwd запрещена запись всем, кроме супер пользователя (супер пользователь может

писать в любой файл). Этот файл, помимо прочего, содержит пароли пользователей и каждому пользователю разрешается изменять свой пароль. Имеется

 

специальная программа /bin/passwd, изменяющая пароли. Однако пользова-

тель не может сделать это даже с помощью этой программы, поскольку запись в файл /etc/passwd запрещена. В системе UNIX эта проблема разрешается следующим образом. При выполняемом файле может быть указано, что при его запуске должны устанавливаться идентификаторы пользователя и/или группы. Если пользователь запрашивает выполнение такой программы (с помощью системного вызова exec), то для соответствующего процесса устанавливаются идентификатор пользователя, соответствующий идентификатору владельца выполняемого файла и/или идентификатор группы этого владельца. В частности, при запуске программы /bin/passwd процесс получит идентификатор супер пользователя, и программа сможет произвести запись в файл /etc/passwd.

И для идентификатора пользователя, и для идентификатора группы реальный ID является истинным идентификатором, а действующий ID - идентификатором текущего выполнения. Если текущий идентификатор пользователя соответствует супер пользователю, то этот идентификатор и идентификатор группы могут быть переустановлены в любое значение системными вызовами setuid и setgid. Если же текущий идентификатор пользователя отличается от идентификатора супер пользователя, то выполнение системных вызовов setuid и setgid приводит к замене текущего идентификатора истинным идентификатором (пользователя или группы соответственно).

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

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

Защита файлов от несанкционированного доступа в ОС UNIX основы

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

катор пользователя (UID - User Identifier), который в дальнейшем можно трактовать как идентификатор владельца вновь созданного файла. Во-вторых, с каждый процессом, пытающимся получить некоторый доступ к файлу, связана пара идентификаторов - текущие идентификаторы пользователя и его группы. В-третьих, каждому файлу однозначно соответствует его описатель - i-узел.

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

Общие принципы защиты одинаковы для всех существующих вариантов системы: Информация i-узла включает UID и GID текущего владельца файла (немедленно после создания файла идентификаторы его текущего владельца устанавливаются соответствующими действующим идентификатором процесса-создателя, но в дальнейшем могут быть изменены системными вызовами chown и chgrp). Кроме того, в i-узле файла хранится шкала, в которой отмечено, что может делать с файлом пользователь - его владелец, что могут делать с файлом пользователи, входящие в ту же группу пользователей, что и владелец, и что могут делать с файлом остальные пользователи. Мелкие детали реализации в разных вариантах системы различаются.

 

1.7 Перспективные ОС, поддерживающие среду ОС UNIX

 

Микроядро - это минимальная стержневая часть операционной системы, служащая основой модульных и переносимых расширений. По видимо-

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

В широкий обиход понятие микроядра ввела компания Next, в операционной системе которой использовалось микроядро Mach. Небольшое привилегированное ядро этой ОС, вокруг которого располагались подсистемы, выполняемые в режиме пользователя, теоретически должно было обеспечить небывалую гибкость и модульность системы. Но на практике это преимущество было несколько обесценено наличием монолитного сервера, реализующего операционную систему UNIX BSD 4.3, которую компания Next выбрала в качестве оболочки микроядра Mach. Однако опора на Mach дала возможность включить в систему средства передачи сообщений и ряд объектно-ориентированных сервисных функций, на основе которых удалось создать элегантный интерфейс конечного пользователя с графическими средствами конфигурирования сети, системного администрирования и разработки программного обеспечения.

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

Заметим, что отсутствует единодушное мнение по поводу того, следует ли на самом деле относить NT к микро ядерным ОС.) ОС NT была построена таким образом, чтобы ее можно было применять в одно- и мультипроцессорных системах, основанных на процессорах Intel, Mips и Alpha и тех, которые придут

вслед за ними). Поскольку в среде NT должны были выполняться программы, написанные для DOS, Windows, OS/2 и систем, совместимых со стандартами Posix, компания Microsoft использовала присущую микро ядерному

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

Позднее микро ядерные архитектуры операционных систем были объявлены компаниями Novell/USL, Open Software Foundation (OSF), IBM, Apple и другими. Одним из основных конкурентов NT в области микро ядерных ОС является Mach 3.0, система, созданная в университете Карнеги-Меллон, которую как IBM, так и OSF взялись довести до коммерческого вида. (Компания Next в качестве основы для NextStep пока использует Mach 2.5, но тоже внимательно присматривается к Mach 3.0.) Другим конкурентом является микроядро Chorus 3.0 компании Chorus Systems, выбранное USL в качестве основы новых реализаций ОС UNIX. Некоторое микроядро будет использоваться в SpringOS фирмы Sun, объектно-ориентированном преемнике ОС Solaris (если, конечно, Sun доведет работу над SpringOS до конца). Очевидна тенденция к переходу от монолитных к микро ядерным системам (этот процесс не является прямолинейным: компания IBM сделала шаг назад и отказалась от перехода к микро ядерной технологии). Кстати, это совсем не новость для компаний QNX Software Systems и Unisys, которые уже в течение нескольких лет выпускают пользующиеся успехом микро ядерные операционные системы. ОС QNX пользуется спросом на рынке систем реального времени, а CTOS фирмы Unisys популярна в области банковского дела. В обеих системах успешно использована модульность, присущая микро ядерным ОС.

 

1.8 Области применения Unix

 

Unix используется как в качестве как сервера, так и рабочей станции. В

номинации серверов с ним конкурируют MS WindowsNT, Novell Netware, IBM OS/2 Warp Connect, DEC VMS и операционные системы мэйнфреймов. Каждая система имеет свою область применения, в которой она лучше других.

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

Netware - для сетей, где нужна высокая производительность файлового и принтерного сервиса и не столь важны остальные сервисы. Главный недостаток - на сервере Netware трудно запускать приложения.

OS/2 хороша там, где нужен "легкий" сервер приложений. Ресурсов требует меньше чем NT, в управлении гибче (хотя в настройке может и сложнее), а многозадачность очень хорошая. Авторизация и разграничение прав доступа не реализованы на уровне ОС, что с лихвой окупается реализацией на уровне приложений-серверов. (Впрочем, зачастую остальные OS делают то же самое). Многие станции FID Onet и BBS сделаны на базе OS/2.

VMS - мощный, ничем не уступающий Unix'ам (а во многом и превосходящий его) сервер приложений, но только для платформ VAX и Alpha фирмы DEC.

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

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

Недостаточная гибкость предоставления прав доступа пользователей к файлам по сравнению с Windows NT затрудняет организацию на уровне фай

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

Практически все протоколы, на которых основан Internet, были разработаны под Unix, в частности стек протоколов TCP/IP придуман в университете Berkeley.

Защищенность Unix при правильном администрировании (а когда это не так?) ни в чем не уступает ни Novell, ни WindowsNT.

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

В номинации рабочих станций с Unix конкурируют MS Windows*, IBM OS/2, Macintosh и Acorn RISC-OS.

 

Windows - для тех, кто ценит совместимость больше эффективности; для тех, кто готов купить большое количество памяти, дискового пространства и мегагерц; для тех, кто любит не вникая в суть, щелкать мышкой по

кнопочкам в окошке. Правда, рано или поздно все равно придется изучить принципы работы системы и протоколов, но тогда уже будет поздно - выбор сделан. Немаловажным преимуществом Windows надо признать также возможность украсть кучу программного обеспечения.

OS/2 - для любителей OS/2.:-) Хотя по некоторым сведениям OS/2 лучше других взаимодействует с мэйнфреймами и сетями IBM.

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

RISC-OS, прошитая в ПЗУ, позволяет не тратить время на инсталляцию операционной системы и восстановление ее после сбоев. Кроме того, практически все программы под ней очень экономно расходуют ресурсы, благодаря чему не нуждаются в свопинге и работают очень быстро.

Unix функционирует как на PC, так и на мощных рабочих станциях с RISC-процессорами, под Unix написаны действительно мощные САПР и геоинформационные системы. Своей масштабируемостью Unix из-за его многоплатформенности на порядок превосходит любую другую операционную систему, по мнению некоторых авторов.

 

2 Сравнение операционных систем семейства Unix и Windows

 

Основная особенность Windows 8 - ее массовое распространение. Связано это с тем, что это операционная система, созданная для пользователей, она не заставляет пользователя подстраиваться под систему, она подстраивается под его потребности. Это самая распространенная в мире операционная система, несмотря на то, что по общественному мнению она самая «глючная», «нестабильная», ненадежная» и к тому же платная.

С точки зрения пользователя Windows устроен примерно так:

1. Ядро. Работает с устройствами, управляет памятью и процессами, управляет графической подсистемой.

2. Графическая подсистема. Обеспечивает интерфейс с пользователем.

3. Текстовая подсистема. Обеспечивает текстовый интерфейс с пользователем.

4. Система удаленного доступа.

Преимущества ОС Windows 8: Гарантированная 100 процентная поддержка любого оборудования, для этого ОС найдется драйвер любого устройства, да и сама она содержит много предустановленных драйверов для быстрого распознавания оборудования. Существует масса профессиональных прикладных программ, полнофункциональные аналоги которых отсутствуют в других ОС, например, Promt и Photoshop. Простота и понятность интерфейса, что делает ее доступной для использования любому человеку, даже не имеющему первичных навыков работы с компьютером. Пользователь может получить любую поддержку или консультацию по его лицензионной ОС Windows 8.

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

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

С точки зрения пользователя UNIX устроен примерно так:

1. Ядро. Работает с устройствами, управляет памятью и процессами.

2. Текстовая подсистема, работа с системой через терминал

3. Система удаленного доступа в текстовом режиме.

4. Система удаленного доступа в графическом режиме.

5. Система передачи графического окна приложения на другой компьютер

Преимущества: Большинство дистрибутивов Linux являются бесплатными, их можно свободно и бесплатно использовать. На основе программного кода как самой системы Linux, так и входящих в неё программ и на их основе можно создавать свои продукты. Поставляется со стандартным набором прикладного ПО. Безопасность в Linux на очень высоком уровне и значительно опережает Windows.

Недостатки:Несмотря на очень большой объём ПО, написанного для Linux, пользователи, столкнутся с тем что, часть ПО будет для них незнакомым... Наибольшие проблемы возникают со специализированным профессиональным софтом, значительная часть которого написана только для Windows-систем.
Unix состоит из ядра с включенными в него драйверами и из утилит (внешних по отношению к ядру программ). Если надо изменить конфигурацию (добавить устройство, изменить порт или прерывание), то ядро пере собирают (перелиновывают) из объектных модулей или (напр., во FreeBSD) из исходников. Это не совсем верно. Некоторые параметры можно поправить без переборки. Существуют также loadable kernel modules.

В противоположность Unix'у Windows (если не уточняется, какая, то имеются в виду 3.11, 95 и NT) и OS/2 при загрузке фактически на ходу перелиновывают драйверы. При этом компактность собранного ядра и повторное использование общего кода на порядок ниже, чем у Unix. Кроме того, при

неизменной конфигурации системы ядро Unix без переделки (потребуется изменить только стартовую часть BIOS) может быть записан в ПЗУ и выполняться не загружаясь_ в ОЗУ. Компактность кода особенно важна, т.к. ядро и драйверы никогда не покидают физическую оперативную память, не сводятся на диск.

Unix - самая много платформенная OS. Windows NT пытается подражать ему, но пока это плохо удается - после отказа от MIPS и POWER-PC, W'NT остались всего на двух платформы - традиционная i*86 и DEC Alpha.

Переносимость программ с одной версии Unix на другую ограничена. Неаккуратно написанная программа, не учитывающая различий в реализациях Unix, делающая необоснованные предположения типа 'переменная integer должна занимать четыре байта' может потребовать серьезной переделки. Но все равно это на много порядков легче, чем, например, перенести с OS/2 на NT

 

 

ЗАКЛЮЧЕНИЕ

 

Итак, данной работе мы рассмотрели наиболее важные этапы создания операционных систем Unix и отличия от семейства Windows.

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

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

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

Ведутся работы над более развитыми версиями BSDNet. Windows – подойдет людям, которым нужен мультимедийный центр (музыка, кино, интернет, игры). И для тех, кому нужен не дорогой и не слишком сложный в использовании компьютер для работы. Linux, да и вообще UNIX-подобные системы - лучший вариант для серверов. Профи (программисты, хакеры, системные администраторы) любят эти системы за высокую гибкость и надежность.

 

 

Список литературы

 

1. История и общая характеристика семейства операционных систем UNIX osys/

2. Эбен М., Таймэн Б. «FreeBSD. Энциклопедия пользователя» - К: ООО «ТИД «ДС», 2002.

3. Керниган Б.В., Пайк Р. «UNIX - универсальная среда программирования» - М.: Финансы и статистика, 1992.

4. С.Д. Кузнецов, «Операционная система UNIX» - статья в Интернете.

5. Коньков К.А. Основы организации операционных систем Microsoft Windows / К.А. Коньков. - М.: Издательство «Интуит», 2005. - 536 с.

6. Левин А. Самоучитель работы на компьютере / А. Левин. - СПб:. Издательский дом «Питер», 2002. - 655 с.

7. Леонтьев В. Большая энциклопедия компьютера и Интернета / В.Леонтьев. - М.: Олма Медиа Групп, 2006. - 1084 с.

 


Дата добавления: 2015-08-28; просмотров: 48 | Нарушение авторских прав




<== предыдущая лекция | следующая лекция ==>
Ну, в-общем, не смог выдержать. Напишу свой первый очерк о посещении Египта. Точнее о своей первой экскурсии в Египте в город фараонов, знаменитый Луксор. В древности он назывался Фивы, и Фивы были | Отчет о движении скота и птицы на ферме

mybiblioteka.su - 2015-2024 год. (0.075 сек.)