Unix-подібні системи

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

Військово-технічний університет при Федеральній службі спеціального будівництва РФ

Інститут промислового, цивільного і транспортного будівництва





















Реферат з предмету інформатика на тему:

«UNIX-подібні операційні системи»























Москва 2009-10 рр..

Зміст

Введення

Історія освіти і розкол

Огляд GNU / Linux-подібних систем

Fedora

Slackware

Огляд BSD-подібних систем

OpenBSD

Frenzy

Огляд файлових систем unix-подібних операційних систем

Extended File System

ext2

Third Extended File System

Табл. 1 Обмеження розмірів

Fourth Extended File System

Journaled File System

XFS

Особливості

Unix File System

ZFS

Ядро linux-kernel-2.6.xx

X. Org Server

Середовища робочого столу

KDE

GNOME

Текстові редактори

nano

vi

Emacs

Висновок

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

Введення

UNIX - група переносите, багатозадачних і багатокористувацьких операційних систем.

Перша система UNIX була розроблена в 1969 р. у підрозділі Bell Labs компанії AT & T. З тих пір була створена велика кількість різних UNIX-систем. Юридично лише деякі з них мають повне право називатися «UNIX»; інші ж, хоча і використовують подібні концепції і технології, поєднуються терміном «UNIX-подібні» (Unix - like). Для стислості в даній статті під UNIX-системами маються на увазі як істинні UNIX, так і UNIX-подібні ОС.

Основні відмінні ознаки UNIX-систем включають в себе:

  • використання простих текстових файлів для настройки та управління системою;

  • широке застосування утиліт, що запускаються в командному рядку;

  • взаємодія з користувачем за допомогою віртуального пристрою - терміналу;

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

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

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

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

Історія освіти і розкол

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

У 1964 році з'явилися комп'ютери третього покоління, для яких можливості BESYS вже не підходили. Висоцький та його колеги прийняли рішення не розробляти нову власну операційну систему, а підключитися до сумісного проекту General Electric та Массачусетського технологічного інституту Multics. Телекомунікаційний гігант AT & T, до складу якого входили Bell Labs, надав проекту істотну підтримку, але в 1969 році вийшов з проекту, оскільки він не приносив жодних фінансових вигід. Першочергово UNIX була розроблена у кінці 1960-х років співробітниками Bell Labs, у першу чергу Кеном Томпсоном, Деннісом Рітчі та Дугласом Макілроєм. У 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 році Кен Томпсон за сприяння Дениса Рітчі розробив і реалізував мова Бі, що представляв собою спрощений варіант розробленого в 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.

З 1978 року починає свою історію BSD UNIX, створений в університеті Берклі. Його перша версія була заснована на шостий редакції. У 1979 випущена нова версія, названа 3BSD, заснована на сьомий редакції. BSD підтримував такі корисні властивості, як віртуальну пам'ять і заміщення сторінок на вимогу. Автором BSD був Білл Джой. На початку 1980-х компанія AT & T, якій належали Bell Labs, зрозуміла цінність UNIX та почала створення комерційної версії UNIX. Ця версія, що надійшла в продаж в 1982 році, мала назву UNIX System III і була заснована на сьомій версії системи.

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

Було запропоновано два інтерфейси програмування мережевих програм: Berkley sockets та інтерфейс транспортного рівня TLI. Інтерфейс Berkley sockets був розроблений в університеті Берклі та використовував стек протоколів TCP / IP, розроблений у цьому ж. TLI був створений AT & T у відповідності з визначенням транспортного рівня моделі OSI та вперше з'явився у системі System V версії 3. Хоча ця версія містила TLI та потоки, першочергово у ній не було реалізації TCP / IP та інших мережевих протоколів, але подібні реалізації пропонувались сторонніми фірмами. Реалізація TCP / IP офіційно та остаточно була включена у базову поставку System V версії 4. Це, як і інші міркування, призвело до остаточного розмежування між двома гілками UNIX - BSD та System V (комерційна версія від AT & T).

Згодом, багато компаній, ліцензований System V у AT & T, розробили власні комерційні різновиди UNIX, такі, як AIX, CLIX, HP-UX, IRIX, Solaris.

У середині 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, реалізовувала монопольний доступ до файлів (file locking), доступ до сторінок на вимогу (demand paging), копіювання при записі (copy-on-write). Версія 3 вийшла в 1987 році і включала, серед іншого, TLI, а також систему підтримки віддалених файлових систем RFS. Версія 4 (SVR4), розроблена у співпраці з фірмою Sun і яка вийшла 18 жовтня 1988, підтримувала багато можливостей BSD, зокрема TCP / IP, сокети, новий командний інтерпретатор csh. Крім того, там було багато інших додатків, таких як символічні посилання, командний інтерпретатор ksh, мережева файлова система NFS (запозичена у SunOS) і т. д.

Сучасні реалізації UNIX, як правило, не є системами V або BSD у чистому вигляді. Вони реалізують можливості як System V, так і BSD.

Огляд GNU / Linux-подібних систем

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 M 32 R, Atmel AVR 32, Renesas H 8 / 300, NEC V 850, Tensilica Xtensa та багатьох інших.

На відміну від більшості інших операційних систем, Linux не має єдиної «офіційної» комплектації. Замість цього Linux поставляється у великій кількості так званих дистрибутивів, в яких ядро Linux з'єднується з утилітами GNU та іншими прикладними програмами (наприклад, X.org), що роблять її повноцінної багатофункціональної операційним середовищем.

Найбільш відомими дистрибутивами GNU / Linux є Arch Linux, CentOS, Debian, Fedora, Gentoo, openSUSE, Red Hat, Slackware, Ubuntu. Більш повний список і відсоток використання можна подивитися на distrowatch.com

На відміну від комерційних систем, таких як Microsoft Windows або Mac OS X, Linux не має географічного центру розробки. Немає і організації, яка володіла б цією системою; немає навіть єдиного координаційного центру. Програми для Linux - результат роботи тисяч проектів. Деякі з цих проектів централізовані, деякі зосереджені в фірмах. Користувачі беруть участь у тестуванні вільних програм, спілкуються з розробниками напряму, що дозволяє швидко знаходити і виправляти помилки та реалізовувати нові возможності.Большінство користувачів для установки Linux використовують дистрибутиви. Дистрибутив - це не просто набір програм, а ряд рішень для різних завдань користувачів, об'єднаних єдиними системами установки, управління та оновлення пакетів, настроювання та підтримки.

Найпоширеніші у світі дистрибутиви:

Ubuntu - дистрибутив, заснований на Debian і швидко завоював популярність. Підтримується спільнотою, розробляється Canonical Ltd. Основна збірка орієнтована на легкість в освоєнні і використанні, при цьому існують серверна і мінімальна збірки.

openSUSE - дистрибутив, що розробляється спільнотою за підтримки компанії Novell. Відрізняється зручністю в налаштуванні і обслуговуванні завдяки використанню утиліти YaST.

Fedora - підтримується спільнотою та корпорацією RedHat, передує випусків комерційної версії RHEL.

Debian - дистрибутив, що розробляється широкою спільнотою "розробників. Служить основою для створення безлічі інших дистрибутивів. Відрізняється суворим підходом включенню таким програмним забезпеченням.

Slackware - один з найстаріших дистрибутивів, відрізняється консервативним підходом у розробці та використанні.

Gentoo - дистрибутив, повністю збирається з вихідних кодів. Дозволяє дуже гнучко налаштовувати кінцеву систему і оптимізувати продуктивність, тому часто називає себе мета-дистрибутивом. Орієнтований на експертів і досвідчених користувачів.

Arch Linux - орієнтований на застосування самих останніх версій програм і постійно оновлюваний, що підтримує однаково як бінарну, так і установку з вихідних кодів і побудований на філософії простоти KISS, цей дистрибутив орієнтований на компетентних користувачів, які хочуть мати всю силу і модифікованості Linux, але не на шкоду часу обслуговування.

CentOS - дистрибутив Linux, заснований на вільних вихідних текстах комерційного дистрибутиву Red Hat Enterprise Linux компанії Red Hat, і сумісний з ним. Термін підтримки кожної версії CentOS становить 7 років (з допомогою випуску оновлень безпеки). Нова версія CentOS виходить раз на 2 роки і кожна версія регулярно оновлюється (кожні 6 місяців) для підтримки нових апаратних засобів. У результаті це призводить до безпечної, легко обслуговується, надійної, передбачуваною і масштабованої Linux середовищі.

Крім перерахованих, існує безліч інших дистрибутивів, як базуються на перерахованих, так і створених з нуля і часто призначених для виконання обмеженої кількості завдань. Кожен з них має свою концепцію, свій набір пакетів, свої переваги й недоліки. Жоден не може задовольнити всіх користувачів, а тому поряд з лідерами благополучно існують інші фірми та об'єднання програмістів, які пропонують свої рішення, свої дистрибутиви, свої послуги. Існує безліч LiveCD, побудованих на основі Linux, наприклад, Knoppix. LiveCD дозволяє запускати Linux безпосередньо з компакт-диска, без встановлення на жорсткий диск. Для бажаючих досконально розібратися з Linux підійде будь-який з дистрибутивів, проте досить часто для цієї мети використовуються так звані source-based дистрибутиви, тобто передбачають самостійне складання всіх (або частини) компонентів з вихідних кодів, такі як LFS, Gentoo або CRUX.

Огляд BSD-подібних систем

До сімейства BSD відносяться: NetBSD, FreeBSD, OpenBSD, ClosedBSD, MirBSD, DragonFly BSD, PC-BSD, DesktopBSD, SunOS, TrueBSD, Frenzy, Ultrix і частково Darwin (ядро Mac OS X).

NetBSD - вільно розповсюджувана, захищена, крос-платформна операційна система. Трохи схожа на UNIX, але такою не є.

Перша офіційна версія NetBSD - 0.8 - була випущена в квітні 1993 року. NetBSD відбувається з систем 4.3BSD і 386BSD. В кінці 1995 року від NetBSD відгалузилися проект OpenBSD. Поточна версія - NetBSD 5.0.2 - випущена 12 лютого 2010 року.

NetBSD портована на величезну кількість комп'ютерних архітектур; гасло NetBSD - «Звичайно, це працює з NetBSD». Підтримуються 53 апаратні платформи. Компіляція пакетів відбувається з одного дерева вихідних кодів, тому нові функції в машинно-незалежних частинах з'являються відразу для всіх платформ без необхідності адаптації. Розробка драйверів також машинно-незалежна, тому один драйвер для карти, яка працює, наприклад, на шині PCI, буде працювати на платформах i386, Alpha, PowerPC, SPARC та інших, що підтримують шину PCI.

Така платформонезалежна дозволяє розробляти вмонтовані системи за допомогою цілого набору інструментів: компіляторів, отладчиков та інших інструментів, що підтримують крос-компіляцію. NetBSD містить власну систему пакетів - pkgsrc. На кінець 2009 року в ній знаходиться більше 9000 пакетів. Установка будь-якої програми, будь то GNOME, KDE, Apache або Perl, зводиться до того, що треба увійти у відповідний каталог і набрати команду make install clean. Після цього вихідні коди будуть завантажені, розпаковані, скомпільовані і встановлені. Альтернативою самостійної збірки служать прекомпільованних (виконавчі) пакети. У будь-якому випадку всі необхідні залежності пакетів будуть дотримані автоматично.

FreeBSD - вільна Unix-подібна операційна система, нащадок AT & T Unix по лінії BSD, створеній в університеті Берклі. FreeBSD працює на PC-сумісних системах сімейства x86, включаючи Microsoft Xbox, а також на DEC Alpha, Sun UltraSPARC, IA-64, AMD64, PowerPC, NEC PC-98, ARM. Готується підтримка архітектури MIPS.

FreeBSD розробляється як цілісна операційна система. Вихідний код ядра, драйверів пристроїв і базових призначених для користувача програм, таких як командні оболонки і т. п., міститься в одному дереві системи управління версіями (до 31 травня 2008 - CVS, зараз - SVN). Це відрізняє FreeBSD від Linux - іншої вільної UNIX-подібної операційної системи - в якій ядро розробляється однією групою розробників, а набір призначених для користувача програм - іншими (наприклад, проект GNU), а численні групи збирають це все в єдине ціле і випускають у вигляді різних дистрибутивів Linux.

FreeBSD добре зарекомендувала себе як система для побудови Інтернет серверів. Вона надає достатньо надійні мережеві служби і ефективне управління пам'яттю.

В даний час FreeBSD надає користувачеві дві взаємодоповнюючі технології установки програмного забезпечення сторонніх розробників: колекція портів FreeBSD і бінарні пакети з програмним забезпеченням. Будь-яка з цих систем може бути використана для встановлення найновіших версій додатків з локальних носіїв або прямо з мережі. На даний момент колекція портів налічує понад 22 тис. додатків самого різного призначення.

OpenBSD - вільна багатоплатформенна операційна система, заснована на 4.4BSD - BSD-реалізації UNIX-системи. Основною відмінністю OpenBSD від інших вільних операційних систем, що базуються на 4.4BSD (таких, як NetBSD, FreeBSD), є початкова орієнтованість проекту на створення найбільш безпечною, вільної та ліцензійно чистої з існуючих операційних систем.

OpenBSD - самостійний проект, відгалуження NetBSD, що виникло в кінці 1995 року в результаті розколу в команді розробників. Тео де Раадт, один з чотирьох засновників NetBSD, був змушений покинути проект після конфронтації з приводу подальшого розвитку ОС. Взявши за основу дерево вихідних кодів NetBSD і переробивши його відповідно до свого ві дением, він створив свій власний проект - OpenBSD, в який, слідом за ним, перейшли і деякі інші розробники NetBSD.

Нові версії (релізи) OpenBSD виходять кожні півроку: орієнтовно 1 травня і 1 ноября.В зараз підтримуються 17 різних платформ і архітектур, включаючи популярні i386-сумісні комп'ютери, MacPPC «New World», M68k, Sun SPARC, UltraSPARC, Fujitsu SPARC64, DEC Alpha, AMD, AMD64, VAX, Sharp Zaurus.

Починаючи з версії 4.2 команда розробників OpenBSD надає для завантаження ISO для ряду платформ - образи настановних дисків, до версії 4.2 користувачам системи пропонувалося самостійно робити настановні образи дисків або отримувати їх з альтернативних джерел.

Найбільш популярним застосуванням OpenBSD є системи захисту мереж (міжмережеві екрани). OpenBSD відрізняється від інших вільних BSD-систем своєю системою розробки. Ніякої код не може потрапити в систему ззовні випадково; будь-які зміни проглядаються відповідальними за відповідну частину системи особами. Будь-яка помилка, знайдена в одному місці, викликає перегляд всього аналогічного коду.

У OpenBSD приділяється величезна увага якості документації. Будь-яка помилка в man-сторінці вважається серйозною і негайно виправляється. Також велика увага приділяється простоті і ясності коду - оскільки розробники небезпідставно вважають, що чим простіше код, тим менше ймовірність пропустити помилку.

Розробники OpenBSD категорично не сприймають використання будь-якого невільного коду в системі. Неодноразово частини операційної системи виключалися з репозиторію через проблеми з ліцензуванням.

Frenzy - Live-CD на базі операційної системи FreeBSD. Призначений для настроювання, перевірки й аналізу комп'ютерних мереж, тестування комп'ютерного апаратного забезпечення і ряду інших завдань.

Frenzy повністю русифікована, до її складу входить російськомовна документація по FreeBSD, а також коротка довідка по роботі з системою.

Frenzy випускається в двох варіантах:

  • Frenzy standard - орієнтована в першу чергу на системних адміністраторів. Обсяг ISO-образа - 200 мегабайт. До складу дистрибутива входить більше 500 додатків.

  • Frenzy extended - орієнтована на адміністраторів і просунутих користувачів, крім додатків з Frenzy standard містить ряд додаткових додатків. Обсяг ISO-образа - 250 мегабайт. До складу дистрибутива входить більше 600 додатків.

    Також існує lite версія (50 мегабайт) в якій відсутня графічний інтерфейс.Базовой операційною системою є FreeBSD 6.3-STABLE.

    Огляд файлових систем unix-подібних операційних систем

    Фа йловая систе ма - порядок, що визначає спосіб організації, зберігання та іменування даних на носіях інформації ІТ-обладнання та комп'ютерної техніки. Вона визначає формат вмісту та фізичного зберігання інформації, яку прийнято групувати у вигляді файлів. Конкретна файлова система визначає розмір імені файлу (папки), максимальний можливий розмір файлу і розділу, набір атрибутів файлу. Деякі файлові системи надають сервісні можливості, наприклад, розмежування доступу чи шифрування файлів.

    Extended File System, скорочено ext або extfs - перша файлова система, розроблена спеціально для ОС на ядрі Linux. Отримала подальший розвиток у версіях ext 2, ext 3, ext 4

    ext2 (іноді ext2fs) - файлова система ядра Linux. Була розроблена Ремі Кардо ext. За швидкістю і продуктивності роботи вона може служити еталоном в тестах продуктивності файлових систем. Так, в тестах на швидкість послідовного читання і запису, файлова система ext2 обганяє ext3, і поступається лише більш сучасної ext4 в тесті на читання.

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

    Система адресації даних - це одна з найважливіших складових файлової системи. Саме вона дозволяє знаходити потрібний файл серед безлічі як порожніх, так і працюючих блоків на диску. Файлова система ext2 використовує таку схему адресації блоків файлу. Для зберігання адреси файлу виділено 15 полів, кожне з яких складається з 4 байт. Якщо файл вміщується в 12 блоків, то номери відповідних кластерів безпосередньо перераховуються в перших дванадцяти полях адреси. Якщо розмір файлу перевищує 12 блоків, то наступне поле містить адресу кластера, в якому можуть бути розташовані номери наступних блоків файлу. Таким чином, 13-е поле використовується для непрямої адресації.

    При максимальному розмірі блоку в 4096 байт кластер, відповідний 13-му полю, може містити до 1024 номерів наступних блоків файлу. Якщо розмір файлу перевищує 12 +1024 блоків, то використовується 14-е поле, в якому знаходиться адреса кластера, що містить 1024 номерів кластерів, кожен з яких посилається на 1024 блоку файлу. Тут застосовується вже подвійна непряма адресація. І нарешті, якщо файл включає понад 12 +1024 +1048576 блоків, то використовується останнє 15-е поле для потрійний непрямої адресації. Дана система адресації дозволяє при максимальному розмірі блоку в 4096 байт мати файли, розмір яких перевищує 2 TB.

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

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

    • writeback: до журналу записуються тільки метадані файлової системи, тобто інформація про її зміну. Не може гарантувати цілісності даних, але вже помітно скорочує час перевірки в порівнянні з ext2;

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

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

    Вказується режим журналювання в рядку параметрів для програми mount, наприклад:

    mount / dev/hda6 / mnt / disc-t ext3-o data = <режим>

    або у файлі / etc / fstab.

    Файлова система ext3 може підтримувати файли розміром до 1 ТБ. У Linux 2.6 (для 32-розрядних процесорів) максимальний розмір блокових пристроїв становить 16 ТБ, однак ext3 підтримує тільки до 4 ТБ.

    Табл. 1 Обмеження розмірів

    Розмір блоку

    Макс. розмір файлу

    Макс. розмір файлової системи

    1 KB

    16 GB

    до 2 TB

    2 KB

    256 GB

    до 4 TB

    4 KB

    2 TB

    до 8 TB

    8 KB

    2 TB

    до 16 TB

    Fourth Extended File System (четверта версія розширеної файлової системи), скор. Ext4, або ext4fs   - Журналіруемая файлова система, яка використовується в ОС з ядром Linux. Заснована на файловій системі ext3, котра є файловою системою за замовчуванням в багатьох дистрибутивах Linux.

    Головною особливістю стало збільшення максимального об'єму одного розділу до 1 ексабайта (2 60 байт) при розмірі блоку 4Kb, і збільшення розміру одного файлу до 16 терабайт. Крім того, в ext4 представлений механізм просторового (extent) запису файлів (нова інформація додається в кінець попередньо виділеної по сусідству області файла), що зменшує фрагментацію і збільшує продуктивність. У системах MS Windows доступ до томів з ext4 можливий через використання технології coLinux.

    Journaled File System або JFS - 64-бітова журналіруемая файлова система створена IBM.

    Вихідний код JFS був відкритий IBM в 1999 році і включений у вихідний код ядра Linux починаючи з версії 2.4.18-pre9-ac4. Більшість дистрибутивів Linux забезпечують підтримку JFS, якщо тільки вона не була спеціально вилучено з-за обмежень на обсяг дистрибутива або інших проблем.Для управління розділами диска в форматі JFS був випущений набір утиліт під назвою JFSutils

    ReiserFS (вимовляється «Райзер Еф Ес») - журналіруемая файлова система, розроблена спеціально для Linux компанією Namesys під керівництвом Ганса Рейзера. Зазвичай під словом ReiserFS розуміють третю версію, а четверту називають Reiser4.

    В даний час ReiserFS підтримується тільки під Linux, але може бути в майбутньому перенесена на інші платформи. З'явившись в Linux версії 2.4.1, вона стала першою журналіруемой файловою системою, включеної в ядро. ReiserFS - стандартна файлова система для дистрибутивів Ubuntu, Gentoo, Archlinux, Slackware, SuSE, Xandros, Yoper, Linspire і Kurumin Linux, що рекомендується в Calculate Linux. Може бути створена командою mkreiserfs.

    Можливість упаковки декількох невеликих файлів в один блок, щоб уникнути фрагментації і втрати дискового простору. Через сильну втрати продуктивності Namesys рекомендує відключити цю можливість на чутливих до ресурсів машинах. Кілька режимів журналювання: тільки метадані / всі дані. Можливість зміни розміру файлової системи «на льоту».

    XFS - високопродуктивна журналіруемая файлова система, створена компанією Silicon Graphics для власної операційної системи IRIX. 1 травня 2001 Silicon Graphics випустила XFS під GNU General Public License. XFS відрізняється від інших ФС тим, що вона спочатку була розрахована для використання на дисках великого обсягу.

    Підтримка XFS була включена в ядро Linux версій 2.4 (починаючи з 2.4.25, коли Марчело Тозатті порахував її достатньо стабільною) і 2.6, і, таким чином, вона стала досить універсальною для Linux-систем. Інсталятори дистрибутивів SuSE, Gentoo, Mandriva, Slackware, Ubuntu, Fedora та Debian пропонують XFS як варіант файлової системи для встановлення. FreeBSD стала підтримувати XFS в режимі читання в грудні 2005 року.

    Особливості

    • 64-бітна файлова система

    • Зміна розміру «на льоту» (тільки збільшення)

    • Дефрагментація «на льоту»

    • API вводу / виводу реального часу (для додатків жорсткого або м'якого реального часу, наприклад, для роботи з потоковим відео)

    • Запис на диск проводиться тільки при нестачі пам'яті. Це дозволяє зменшити фрагментацію, а також знизити активність запитів до диску.

    • Інтерфейс (DMAPI) для підтримки ієрархічного управління носіями (HSM)

    • Інструменти резервного копіювання і відновлення (xfsdump and xfsrestore)

    • Реальний розмір файла на файловій системі, на відміну від кратного розміру блока.

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

    Фізично UFS складається з наступних частин:

    • кілька блоків на початку розділу відводиться під завантажувальну область (яка повинна инициализироваться окремо від файлової системи)

    • суперблок, що включає магічне число, инициализирующая файлову систему, і деякі інші важливі числа, що описують геометрію і налаштування деяких параметрів файлової системи

    • опис груп циліндрів. Кожна група включає наступні компоненти:

      • Резервну копію суперблоку

      • Тема групи циліндрів, статистичні дані і т. д., інформацію аналогічну міститься в суперблоці, але для конкретної групи

      • Число індексних дескрипторів, кожен з яких містить атрибути файлів

    Індексні дескриптори нумеруються послідовно. Кілька перших індексних дескрипторів збережені з історичних причин, далі йдуть індексні дескриптори кореневого каталогу. Каталог файлів містять тільки список файлів в директорії і індексний дескриптор, пов'язаний з кожним файлом. Користувачі деяких комерційних Unix систем, таких як Solaris, HP-UX та Tru64 UNIX, взяли UFS. Більшість з них перевели системи на UFS, додали пропрієтарні доповнення, які дозволяли не розпізнати UFS користувачам інших версій UNIX. Дивно, але багато з них продовжують використовувати оригінальний розмір блоку даних і ширину блоку, як і в оригінальній UFS, так що деяка ступінь залишається сумісної на різних платформах. Сумісність між реалізаціями неповна, в кращому випадку, і повинна бути досліджена перед використанням на декількох платформах.

    Linux підтримує UFS на рівні читання, але не має повної підтримки для запису UFS. Рідний Linux ext2 створений за подобою UFS. (Справді, в деяких 4.4BSD системах, UFS шар може використовувати ext2 шар як контейнер, так само, як він може використовувати FFS і LFS). Ігрова консоль PlayStation 3 використовує UFS2 на своєму HDD. У PlayStation 2 використовується UFS.

    ZFS (Zettabyte File System) - файлова система, створена в корпорації Sun Microsystems для операційної системи Solaris. Ця файлова система підтримує великі об'єми даних, об'єднує концепції файлової системи і менеджера логічних дисків (томів) та фізичних носіїв, інноваційну структуру даних на дисках, легкі файлові системи (lightweight filesystems), а також просте управління томами зберігання даних. ZFS є проектом з відкритим вихідним кодом і ліцензується під CDDL (Common Development and Distribution License).

    Основна перевага ZFS - це її повний контроль над фізичними і логічними носіями. Знаючи, як саме розташовані дані на дисках, ZFS здатна забезпечити високу швидкість доступу до них, контроль їх цілісності, а також мінімізацію фрагментації даних. Це дозволяє динамічно виділяти або звільняти дисковий простір на одному або більше носіях для логічної файлової системи. Крім того, має змінний розмір блоку, що кращим чином впливає на продуктивність, паралельність виконання операцій читання-запису, а також 64-розрядний механізм використання контрольних сум, що зводить до мінімуму ймовірність руйнування даних.

    ZFS це 128-бітна файлова система, що дозволяє їй зберігати в 18.4 × 10 18 разів більше даних, чим нинішні 64-бітні системи. ZFS спроектована так, щоб її обмеження були настільки великі, що вони ніколи не зустрінуться на практиці. Як заявив керівник проекту Бонвік, «заповнення 128-бітних файлових систем перевищить квантові можливості зберігання даних на Землі. Ви не зможете заповнити і зберігати 128-бітовий об'єм, не закип'ятивши при цьому океан. »Приклад того, наскільки великі ці цифри: якби 1000 файлів створювалися кожну секунду, то було б потрібно близько 9000 років для досягнення межі кількості файлів.

    Деякі теоретичні межі в ZFS:

    • Лютий 1948 - Кількість знімків (snapshot) в будь-якій файловій системі (2 × 10 14)

    • Лютий 1948 - Кількість файлів в будь-якій індивідуальній файловій системі (2 × 10 14)

    • 16 ексабайт (2 64 byte) - Максимальний розмір файлової системи

    • 16 ексабайт (2 64 byte) - Максимальний розмір одного файлу

    • 16 ексабайт (2 64 byte) - Максимальний розмір будь-якого атрибуту

    • 3 × 10 23 петабайт - Максимальний розмір будь-якого пулу зберігання (zpool)

    • Лютий 1956 - Кількість атрибутів файлу (фактично обмежується 2 48 на кількість файлів у файловій системі ZFS)

    • Лютий 1956 - Кількість файлів в директорії (реально обмежено 2 48 на кількість файлів у файловій системі ZFS)

    • 2 64 - Кількість пристроїв в будь-якому zpool

    • 2 64 - Кількість zpool'ів в системі

    • 2 64 - Число файлових систем в zpool

    Ядро linux-kernel-2.6.xx

    Ядро Linux підтримує багатозадачність, віртуальну пам'ять, динамічні бібліотеки, відкладене завантаження, продуктивну систему управління пам'яттю і багато мережних протоколи.

    На сьогоднішній день Linux - монолітне ядро з підтримкою завантажуваних модулів. Драйвери пристроїв і розширення ядра зазвичай запускаються в 0-кільці захисту, з повним доступом до устаткування. На відміну від звичайних монолітних ядер, драйвери пристроїв легко збираються у вигляді модулів і завантажуються або вивантажуються під час роботи системи.

    Те, що архітектура Linux не є мікроядерної, викликало якнайширші дебати між Лінус Торвальдс і Ендрю Таненбаум у конференції.

    Не задуманий спочатку як багатоплатформного ядро, Linux на даний момент портований на дуже широке коло архітектур, запускається на широкому спектрі обладнання від iPAQ до IBM S/390. Системи на основі Linux використовуються в якості основних практично на всіх суперкомп'ютерах (більше 80% списку Top500), в тому числі і на самих потужних - Jaguar.

    X. Org Server

    X. Org Server (скорочено Xorg Server або просто Xorg, офіційно «X. Org Foundation Open Source Public Implementation of X11») - вільна реалізація сервера X Window System з відкритим кодом.

    X Window System - віконна система, що забезпечує стандартні інструменти і протоколи для побудови графічного інтерфейсу користувача. Використовується в UNIX-подібних ОС.

    X Window System забезпечує базові функції графічного середовища: відображення і переміщення вікон на екрані, взаємодію з мишею і клавіатурою. X Window System не визначає деталей інтерфейса користувача - цим займаються менеджери вікон, яких розроблено безліч. Через це зовнішній вигляд програм у середовищі X Window System може дуже сильно відрізнятися в залежності від можливостей та налаштувань конкретного віконного менеджера.

    У X Window System передбачена мережева прозорість: графічні програми можуть виконуватися на іншій машині в мережі, а їх інтерфейс при цьому буде передаватися через мережу і відображатись на локальній машині користувача (у разі якщо це дозволено в налаштуваннях). У контексті X Window System терміни «клієнт» і «сервер» мають незвичне для багатьох користувачів значення: «сервер» означає локальний дисплей користувача (дисплейний сервер), а «клієнт» - програму, яка цей дисплей використовує (вона може виконуватися на віддаленому комп'ютері ).

    X Window System використовує клієнт-серверну модель: X-сервер обмінюється повідомленнями з різними клієнтськими програмами. Сервер приймає запити на виведення графіки (вікон) і відправляє назад користувальницький введення (від клавіатури, миші чи сенсорного екрана). X-сервер може бути:

    • системною програмою, яка контролює виведення відео на персональному комп'ютері;

    • додатком, що відображає графіку у вікно якийсь інший дисплейної системи;

    • виділеним компонентом апаратного забезпечення.

    Ця клієнт-серверна термінологія - призначений для користувача термінал у якості «сервера» і віддалені програми як «клієнтів» - часто заплутує нових користувачів X, оскільки звичайно ці терміни мають зворотні значення. Але X Window System приймає точку зору програми, а не кінцевого користувача апаратури: локальний дисплей надає послуги відображення графіки програмам, і тому виступає в ролі сервера. Віддалені програми використовують ці послуги, і тому відіграють роль клієнтів.

    X Window System навмисно не визначає, як повинен виглядати інтерфейс користувача програми - кнопки, меню, заголовки вікон і т. д. Ці питання вирішуються на рівні віконних менеджерів, інструментаріїв елементів інтерфейсу, середовищ робочого столу і на рівні окремих додатків. З цієї причини візуальне уявлення X-інтерфейсів зазнало величезних змін з плином часу.

    Віконний менеджер управляє розміщенням і зовнішнім виглядом вікон додатків. Він може створювати інтерфейс, подібний Microsoft Windows або Macintosh (наприклад, так працюють менеджери вікон Kwin в KDE та Metacity у GNOME), або зовсім інший стиль (наприклад, у фреймових віконних менеджерах, таких, як Ion). Віконний менеджер може бути простим і мінімалістичним (як twm - базовий віконний менеджер, що поставляється з X), а може пропонувати функціональність, близьку до повноцінної робочої середовищі (наприклад, Enlightenment).

    Багато користувачів використовують X разом з повною середовищем робочого столу, яка включає в себе віконний менеджер, різні програми та єдиний стиль інтерфейсу. Найбільш популярні середовища робочого столу - GNOME і KDE. У стандарті Single UNIX Specification вказана середу CDE.

    Середовища робочого столу

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

    Працює переважно під UNIX-подібними операційними системами, які використовують графічну підсистему X Window System. Нове покоління технології KDE 4 частково працює на Microsoft Windows і Mac OS X.

    До складу KDE входить набір тісно інтегрованих між собою програм для виконання повсякденної роботи. Також в рамках проекту розробляються інтегрована середовище розробки KDevelop і офісний пакет KOffice.

    Інтерфейс KDE критикується за складність та наявність великої кількості опцій для налаштування. Проте звіт про практичність по версії KDE 3.1 показує, що користувачі Microsoft Windows швидко освоюються в KDE і здатні виконувати поточні завдання так само успішно, як і в Windows XP

    GNOME - вільне середовище робочого столу для Unix-подібних операційних систем. GNOME є частиною проекту GNU.

    Розробники GNOME орієнтуються на створення повністю вільного середовища, доступною всім користувачам незалежно від їх рівня технічних навичок, фізичних обмежень й мови, якою вони говорять. У рамках проекту GNOME розробляються як додатки для кінцевих користувачів, так і набір інструментів для створення нових додатків, тісно інтегруються в робоче середовище. Починаючи з GNOME версії 2.0, велику важливість у розвитку проекту беруть міркування практичності, простоти і зручності використання середовища, в тому числі для недосвідчених чи фізично обмежених користувачів. Ця тенденція знайшла своє вираження в статті Хевока Пеннінгтон «Інтерфейс вільних програм». Ключовим моментом у цій статті стала ідея про те, що кожна функціональне навантаження і кожна опція налаштування у програмі має свою ціну: часто краще вибрати один, оптимальний варіант поведінки програми, ніж реалізовувати безліч варіантів і примушувати користувача вибирати один з них.

    Результатом стала розробка «Керівництва по створенню людського інтерфейсу GNOME». HIG - керівництво, покликане допомогти розробникам у створенні високоякісних, несуперечливих і зручних графічних інтерфейсів. Як один із наслідків застосування HIG, багато налаштувань, раніше доступні в GNOME, були визнані розробниками проекту не потрібними або малозначними для більшості користувачів і видалені з основних діалогових вікон налаштування.

    Xfce - вільне середовище робочого столу для UNIX-подібних операційних систем, таких як Linux, NetBSD, OpenBSD, FreeBSD, Solaris і т. п. Конфігурація даного середовища повністю управляється мишею, конфігураційні файли приховані від користувача.

    Поточна версія 4.6 - модульні, де одні модулі можуть використовувати функціональність інших. Вона складається з окремих програмних компонентів, разом надають повнофункціональне середовище робочого столу, але з них можна залишити тільки ті, які забезпечують бажану для користувача робоче середовище. Xfce використовується, головним чином, через можливість запустити сучасне середовище робочого столу на відносно скромному обладнанні.

    Xfce заснована на GTK + 2 і використовує менеджер вікон Xfwm. Початок своєї історії Xfce бере з 1998 року. Тоді ця оболонка являла собою додаток до популярної тоді середовищі CDE, тому спочатку Xfce дуже нагадувала комерційну CDE, але з кожної випущеної версією все далі відходить від даної системи (Xfce була повністю переписана двічі - між версіями 2 і 3 та між версіями 3 та 4) .

    Xfce втілює в собі традиційну філософію UNIX, а саме концепції модульності і можливості багаторазового використання. Функціональні компоненти винесені в окремі додатки, і користувач має можливість конфігурувати систему оптимальним чином.

    Існує так ще й інші середовища робочого столу наприклад, як LXDE, Unity, CDE, Fluxbox і д.р. Але опис кожної з них не вмістилося б навіть у багатосторінкову книгу.

    Текстові редактори

    nano - консольний текстовий редактор для Unix і Unix-подібних операційних систем, який базується на бібліотеці curses і розповсюджуваний під ліцензією GNU GPL. Це вільний клон текстового редактора Pico, що входив до складу e-mail клієнта Pine. nano був створений, щоб повторити функціональність і зручність інтерфейсу Pico, але без глибокої інтеграції в поштовий клієнт, властивою пакету Pine / Pico.

    Вперше він з'явився в 1999 році під ім'ям TIP. Його творцем став Кріс Аллегретта (Chris Allegretta), метою якого було бажання створити вільне програмне забезпечення для заміни Pico. У той же час nano є бекронімом «n ano's ano ther editor» (nano - інший редактор), який використовується так само часто. У лютому 2001 nano офіційно став частиною проекту GNU. Пізніше nano включив в себе кілька можливостей, відсутніх у Pico: підсвічування синтаксису, регулярні вирази при пошуку і заміні, плавну прокрутку і багаторівневий буфер.

    vi (visual) - серія текстових редакторів операційних систем сімейства UNIX. На відміну від багатьох звичних редакторів, vi має модальний інтерфейс. Це означає, що одні й ті ж клавіші в різних режимах роботи виконують різні дії. У редакторі vi є два основні режими: командний режим і режим вставки. За замовчуванням, робота починається в командному режимі. На даний момент є реалізації vi для різних операційних систем. Існують клони редактора vi з розширеною функціональністю.

    Emacs (Ема кс, Е макс, також І макс) - родина багатофункціональних розширюваних текстових редакторів.

    На сьогоднішній день найбільш поширеними є варіанти GNU Emacs та XEmacs. Обидва є вільним ПЗ, поширюваним на умовах GNU GPL. XEmacs є відгалуженням або форк GNU Emacs. У 1991 році деякі з розробників останнього вирішили «відколотися», щоб працювати над власним (XEmacs) варіантом редактора. Розкол був викликаний їх незгодою з думкою Річарда Столлмена - у той час головного куратора проекту - про подальший напрям розвитку Emacs.

    XEmacs відрізняється більшою спрямованістю на зовнішній вигляд, що набли женний до стандартних сучасним редакторам (використання панелей інструментів і т. п.). Крім того, XEmacs підтримує шрифти з нефіксованим шириною символу, зображення, що впроваджуються у текст і т. п. Втім, останні версії GNU Emacs також включають більшість цих можливостей, тому різниця не така помітна. Крім того, дуже багато Emacs-пакети працюють в обох варіантах редактора і є загальними. Основу ідеології Emacs становлять принципи «все в одному», розширюваності, настроюваності під користувача і документованості.

    Висновок

    Ідеї, закладені в основу UNIX, справили величезний вплив на розвиток комп'ютерних операційних систем. В даний час UNIX-системи визнані одними з найбільш історично важливих ОС. Як і Multics, UNIX була написана на мові високого рівня, а не на асемблері (домінували в той час).

    UNIX популяризувала запропоновану в Multics ідею ієрархічної файлової системи з довільною глибиною вкладеності. Інші операційні системи того часу дозволяли розбивати дисковий простір на каталоги або розділи, але число рівнів вкладеності було фіксоване і, найчастіше, рівень вкладеності був тільки один. Пізніше всі основні фірмові операційні системи здобули можливість створення рекурсивних підкаталогів, також запозичену з Multics.

    Те, що інтерпретатор команд став просто однією з користувацьких програм, а в якості додаткових команд виступають окремі програми, є ще однією інновацією Multics, популяризувалася UNIX. Мова командної оболонки UNIX використовується користувачем як для інтерактивної роботи, так і для написання скриптів, тобто не існує окремого мови опису завдань, як, наприклад, в системі JCL фірми IBM. Новий, запропонований у командному рядку UNIX, спосіб створення ланцюжків програм, послідовно обробляють дані, сприяв використанню паралельної обробки даних.

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

    UNIX сприяла широкому поширенню регулярних виразів, які були вперше реалізовані в текстовому редакторі ed для UNIX. Можливості, що надаються UNIX-програм, стали основою стандартних інтерфейсів операційних систем (POSIX).

    Широко використовуваний в системному програмуванні мову Сі, створений спочатку для розробки UNIX, перевершив UNIX за популярністю. Мова Сі був першим «віротерпимість» мовою, який не намагався нав'язати програмісту той чи інший стиль програмування. Сі був першим високорівневих мовою, що надає доступ до всіх можливостей процесора, таким як посилання, таблиці, бітові зрушення, збільшення і т. п. З іншого боку, свобода мови Сі приводила до помилок переповнювання буфера в таких функціях стандартної бібліотеки Сі, як gets і scanf. У результаті виникли сумно відомі уразливості, наприклад, та, що експлуатувалася в знаменитому черв'яку Морріса.

    Перші розробники UNIX сприяли впровадженню принципів модульного програмування та повторного використання в інженерну практику.

    UNIX надавав можливість використання протоколів TCP / IP на порівняно недорогих комп'ютерах, що призвело до швидкого зростання Інтернету.

    На даному етапі розвитку unix-подібні системи впевнено зайняли свою нішу. Широко використовуючись у вбудованих пристроях, серверах, суперкомп'ютерах і набираючи популярності на десктопах.

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

    1. Робачевкій А. М., Немнюгин С. А., Стесик О. Л. Операційна система UNIX.

    2. linuxinsight.com

    3. kde.org

    4. ru.wikipedia.org

    5. Джон Смірл. Стан графіки Лінукс

    6. obsd.ru

    7. distrowatch.com

    Додати в блог або на сайт

    Цей текст може містити помилки.

    Комунікації, зв'язок, цифрові прилади і радіоелектроніка | Реферат
    157.3кб. | скачати


    Схожі роботи:
    Основні роботи операційної системи UNIX Підтримка мережі UNIX
    Операційні системи Unix і Windows NT
    Операційні системи WINDOWS NT NetWare UNIX Оперцiйна система Windows NT
    Методичні особливості вивчення теми Подібні трикутники в середній загальноосвітній школі
    UNIX System V
    Операційна система Unix
    Операційна система Unix 3
    Файлова система UNIX
    Tелеконференцiї USENET i UNIX
    © Усі права захищені
    написати до нас