ОС семейства Unix: linux, FreeBSD, NetBSD

Автор: Пользователь скрыл имя, 13 Марта 2012 в 03:34, реферат

Описание работы

История ОС UNIX началась в 1969 году в одном из подразделений AT&T Bell Laboratories, когда на "малоиспользуемой" машине DEC PDP-7 Кен Томпсон (Ken Thompson), Деннис Ричи (Dennis Ritchie) и другие (прежде занимавшиеся созданием ОС Multics) начали работу над операционной системой, названной ими первоначально Unics (UNiplexed Information and Computing System). В течение первых 10 лет развитие UNIX происходило, в основном, в Bell Labs. Соответствующие начальные версии назывались "Version n" (Vn) и предназначались для ЭВМ DEC PDP-11 (16-битовая) и VAX (32-битовая).

Содержание

Введение…………………………………………………………………………………………………..3

1.Общая структура и характеристики ОС Linux………………………………………..5

1.1Основы сетевого взаимодействия в ОС Linux……………………………6

1.2 Основные команды LINUX……………………………………………………..…7
1.3. Сетевые команды в ОС Linux……………………………………………………9

2.Что такое BSD?..........................................................................................14

3.Сравнение BSD и Linux…………………………………………………………………….……15

4.Версии BSD……………………………………………………………………………………….…..16

4.1.FreeBSD……………………………………………………………………………….……16

4.2.NetBSD………………………………………………………………………………………19

Работа содержит 1 файл

Рефератпо СТ.docx

— 64.35 Кб (Скачать)

Министерство образования и  науки Российской федерации

Дагестанский  государственный технический университет

 

 

 

Факультет Информатика и Управление

Кафедра ВТ

 

 

 

 

На  тему:

 

 

 

«ОС семейства Unix: linux, FreeBSD, NetBSD»

 

 

 

 

 

 

 

 

 

 

Выполнила: ст-ка 4кр, гр-841

ФиУ ПОВТиАС

Омарова М. О.

Приняла:  Губа М. А.

 

 

 

 

 

 

 

Махачкала 2012г

 

Содержание

 

 

Введение…………………………………………………………………………………………………..3

 

1.Общая структура и характеристики ОС Linux………………………………………..5

 

1.1Основы  сетевого взаимодействия в ОС Linux……………………………6

 

1.2 Основные  команды LINUX……………………………………………………..…7

1.3. Сетевые команды в ОС Linux……………………………………………………9

 

2.Что такое BSD?..........................................................................................14

 

3.Сравнение BSD и Linux…………………………………………………………………….……15

 

4.Версии BSD……………………………………………………………………………………….…..16

 

4.1.FreeBSD……………………………………………………………………………….……16

 

4.2.NetBSD………………………………………………………………………………………19

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ввдение

 

История ОС UNIX началась в 1969 году в одном  из подразделений AT&T Bell Laboratories, когда  на "малоиспользуемой" машине DEC PDP-7 Кен Томпсон (Ken Thompson), Деннис Ричи (Dennis Ritchie) и другие (прежде занимавшиеся созданием ОС Multics) начали работу над  операционной системой, названной ими  первоначально Unics (UNiplexed Information and Computing System). В течение первых 10 лет развитие UNIX происходило, в основном, в Bell Labs. Соответствующие начальные версии назывались "Version n" (Vn) и предназначались  для ЭВМ DEC PDP-11 (16-битовая) и VAX (32-битовая).Версии Vn разрабатывались группой Computer Research Group (CRG) в Bell Labs. Поддержкой занималась другая группа, Unix System Group (USG). Разработкой также занималась группа Programmer's WorkBench (PWB), привнесшая систему управления исходным кодом sccs, именованные каналы и ряд других идей. В 1983 году эти группы были объединены в одну, Unix System Development Lab.

Операционная система Unix была задумана и реализована в Bell Laboratories компании AT&T в Соединенных Штатах Америки Кеном Томпсоном, Деннисом Ритчи, Дугласом Макилроем и Джо Осанной. Операционная система Unix была впервые выпущена в 1971 году и первоначально была написана целиком на ассемблере, что было обычной практикой того времени. Позже, в 1973 году, Unix была переписана Деннисом Ритчи на языке программирования Cи (за исключением ядра и системы ввода/вывода). То, что операционная система была написана на языке высокого уровня, позволило упростить её портирование на различные компьютерные платформы. Из-за особенностей лицензии AT&T была вынуждена открывать исходный код операционной системы всем обратившимся, что позволило Unix быстро развиться и стать популярной во многих научных учреждениях и предприятиях. В 1984 году AT&T отделилась от Bell Labs. Избавившись от необходимости бесплатного лицензирования системы, Bell Labs начала продажи Unix как проприетарного продукта.

 

Современные версии ОС UNIX

Итак, в настоящее время (начало 2004 года - В.К.) мы имеем на платформе Intel x86 следующие основные версии UNIX:

FreeBSD 5.2;

OpenBSD 3.4;

NetBSD 1.6.2;

Linux 2.0, 2.2, 2.4, 2.6 в виде множества  различных дистрибутивов;

Solaris 9;

SCO OpenServer 5.0.7 и UnixWare 7.1.3

На других платформах (основные версии):

Linux 2.6.x (практически все платформы);

NetBSD 1.6.2 (практически все платформы);

Mac OS X 10.3.2 (PowerPC);

AIX 5L v5.2 (PowerPC);

Solaris 9, 10 (SPARC);

HP-UX 11i (PA-RISC, Intel Itanium);

Tru64 Unix V.5.1B-1 (Alpha);

IRIX 6.5.23 (MIPS)

ОС UNIX имеет следующие основные характеристики:

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

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

Системные вызовы обеспечивают:

  • сопоставление действий пользователя с запросами драйверов устройств;
  • создание и прекращение процессов;
  • реализацию операций ввода-вывода;
  • доступ к файлам и дискам;
  • поддержку функций терминала.

 

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

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

    1. Общая структура и характеристики ОС Linux

 

GNU/Linux (произносится  «гну слэш ли́нукс», другие названия  см. ниже) — общее название Unix-подобных  операционных систем на основе  ядра Linux, библиотек и системных  программ, разработанных в рамках  проекта GNU, а также другого  программного обеспечения.

GNU/Linux работает  на множестве архитектур процессора, таких как Intel x86, x86-64, PowerPC, ARM, Alpha AXP, Sun SPARC, Motorola 68000, Hitachi SuperH, IBM S/390, MIPS, HP PA-RISC, AXIS CRIS, Renesas M32R, Atmel AVR32, Renesas H8/300, NEC V850, Tensilica Xtensa и многих других.

В отличие от большинства других операционных систем, GNU/Linux не имеет  единой «официальной» комплектации. Вместо этого GNU/Linux поставляется в большом  количестве так называемых дистрибутивов, в которых ядро Linux соединяется  с утилитами GNU и другими прикладными  программами (например, X.org), делающими  её полноценной многофункциональной  операционной средой.

Согласно distrowatch наиболее популярными дистрибутивами являются: 1) deb-base (Debian, Mint, Ubuntu), rpm-base (RedHat, Fedora, OpenSUSE), Source-base (Slakware, Gentoo)

Российские  дистрибутивы rpm-base: ALT Linux, ASPLinux и НауЛинукс; Source-base: Calculate Linux и AgiliaLinux; deb-base: Runtu и Rosinka.

Украинские  дистрибутивы rpm-base: MyLinux; Source-base: Blin и Grusha Linux; deb-base: Ubuntu Install Box и Ubuntu DesktopPack

Операционные системы на основе GNU и Linux называют «Linux» или «GNU/Linux» (произносится «гну слэш ли́нукс»). Первый вариант гораздо более популярен, и чаще используется сторонниками термина «open source», второй — сторонниками «free software».

Хотя  в английском второй вариант пишется  и звучит, как «GNU/Linux» , это не всегда удобно в других языках. Поэтому, если можно показать равноправность GNU и Linux лучшим способом — например, GNU+Linux (гну плюс линукс), GNU-Linux (во французском), или GNU con Linux (в испанском), лучше использовать его, чем «GNU Linux» («гну ли́нукс»), подразумевающее, что ядро «Linux» было разработано или принадлежит проекту GNU. Аналогичным образом построены названия «TCP/IP» и «Ogg/Vorbis».

Проект GNU был начат в 1983 году Ричардом Столлманом с целью создания «целостной Unix-совместимой программной системы», полностью состоящей из свободного программного обеспечения. Работа началась в 1984. Позднее, в 1985, Столлман основал Free Software Foundation, а в 1989 году составил GNU General Public License (GNU GPL). В начале 1990-х многие из программ, необходимых в операционной системе (такие, как библиотеки, компиляторы, текстовые редакторы, командная оболочка UNIX, и оконная система), были завершены, в то время как разработка низкоуровневых элементов, таких как драйверы, демоны и ядра была приостановлена и они оставались незавершёнными.Линус Торвальдс сказал, что если бы ядро GNU было доступно в то время (1991), он бы не решился написать своё собственное

Несмотря на то, что из-за юридических  проблем с лицензией 386BSD, из которой  позже произошли NetBSD и FreeBSD, не была выпущена до 1992 года, её разработка предшествовала Linux. Линус Торвальдс сказал, что  если бы 386BSD была доступна в то время, он, вероятно, не создал бы Linux.

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

 ОС Linux - это полноценная многозадачная  многопользовательская операционная  система с

 поддержкой  до 256 процессоров в 64-битной архитектуре,  позволяющая большому количеству

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

 взаимодействий  является одной из наиболее  сильных сторон ОС Linux, как в  отношении

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

 ОС Linux совместима с рядом стандартов UNIX на уровне исходных текстов,  включая IEEE POSIX.l, System V и BSD. Она  создавалась с учетом требований, предъявляемых к уровню переносимости  исходного программного кода, поэтому  в ОС Linux присутствуют функции,  реализованные во многих коммерческих  вариантах UNIX.

 ОС Linux поддерживает самые разнообразные  типы файловых систем для хранения  данных. Некоторые файловые системы,  например, вторая и третья расширенная  файловая система (ext2fs, ext3fs), были  специально разработаны для использования  в ОС Linux. Данная ОС поддерживает  и другие типы файловых систем UNIX - UFS, ReiserFS и JFS. Реализована также  поддержка файловых систем Windows NTFS, FAT32 и FAT16, что позволяет непосредственно  обращаться к файлам ОС Windows. Также  поддерживается файловая система  ISO 9660 CD-ROM, позволяющая читать компакт-диски  всех стандартных форматов.

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

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

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

 

 

1.1.Основы сетевого взаимодействия в ОС Linux

 

 

ОС Linux, как и другие операционные системы, поддерживает множество методов  обмена данными и работы в сети. Главным образом это означает взаимодействие с другими системами  в сетях TCP/IP. Как было замечено ранее, поддержка сетевых взаимодействий является одной из наиболее сильных  сторон ОС Linux как в отношении  поддерживаемых функций, так и в  отношении производительности. ОС Linux обеспечивает полную реализацию стека  протоколов TCP/IP.

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

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

 

 

 

 

 

 

 

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

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

Информация о работе ОС семейства Unix: linux, FreeBSD, NetBSD