Міністерство освіти і науки України

Київський національний університет будівництва і архітектури

Кафедра інформаційних технологій

 

Операційна система Linux

Виконав: Кирилов М.Ю.

студент групи: КН-13

факультету АІТ

Перевірив: Задоров В.Б.

Київ 2010


Введення в Linux

UNIX - одна з найпопулярніших в світі операційних систем завдяки тому, що її супроводжує і розповсюджує велике число компаній. Спочатку вона була створена як багатозадачна система для мінікомп'ютерів і мейнфреймів в середині 70-их років, але з тих пір вона виросла в одну з найбільш поширених операційних систем, незважаючи на свій часом, обескураживающий інтерфейс і відсутність централізованої стандартизації. LINUX - багатозадачна і багатокористувацька операційна система для освіти, бізнесу, індивідуального програмування. LINUX належить до сімейства UNIX-подібних операційних систем. Спочатку LINUX створювався Лінус Торвальдс як хобі. Його надихнула операційна система Minix. Далі LINUX став розроблятися групою ентузіастів UNIX. Сьогодні LINUX - повноцінна операційна система UNIX, здатна працювати з "X Windows", TCP / IP, Emacs та іншими пакетами. Що робить LINUX настільки відмінним від інших операційних систем? - Він був створений і продовжує удосконалюватися і розвиватися групою добровольців. Всі бажаючі запрошуються підключитися до цієї роботи. Єдине, що потрібно - це інтерес до сімейства UNIX і бажання удосконалювати свої навички в цьому середовищі. Університети по всьому світу застосовують LINUX в навчальних курсах з програмування та проектування операційних систем.

 

Ключеві риси LINUX

ü  Розрахована на багато користувачів операційна система, захищеного 32-х розрядного режиму, в її складі немає 16-ти розрядного коду, крім підпрограми завантаження.

ü  Передова 32 [64 для Alpha] бітна підсистема віртуальної пам'яті.

ü  Відсутній обмеження 640К. LINUX може виділити до 3Гб на процес, якщо у вас є досить віртуальної пам'яті.

ü  Система безпеки файлів і процесів користувача.

ü  Мережева система графічного інтерфейсу "X Windows", що відповідає промисловому стандарту. Запуск додатків через мережу. Можливість роботи додатків з багатьох машин на вашій робочій станції одночасно.

ü  Загальні бібліотеки ("Shared libraries") для підвищення ефективності використання пам'яті і дискового простору.

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

ü  API стилю POSIX.1 з USL і BSD розширеннями. Перенесення майже будь-якого коректно написаного Posix або Unix API додатка є тривіальною задачею.

ü  Вбудована підтримка мережі TCP / IP включаючи обидва протоколи і стандартний набір інструментів BSD.

ü  Широкий спектр WWW інструментів.

ü  Клієнт і сервер NFS - стандартної мережної файлової системи Unix.

ü  SAMBA SMB сервер для LAN manager і клієнтів Windows for Workgroups.

ü  MARS_NWE сервер клону Netware для використання в мережах IPX.

ü  Netatalk Appletalk сервер для використання в мережах Appletalk (Еппл).

ü  Клієнт і сервер SMTP (E-mail) включаючи підтримку MIME.

ü  Програмне забезпечення для UUCP - протоколу старого стилю для ефективного збереження і маршрутизації мережної інформації.

ü  SLIP і PPP для роботи з мережами Інтернет через аналогові та цифрові модеми.

ü  Широкий ряд мережевих високопродуктивних драйверів.

ü  Драйвери для звукових плат і приводів СD-ROM.

ü  Емулятор DOS.

ü  Практично безкоштовна система. Ліцензія дозволяє не тільки копіювати і поширювати soft, а й надаються вихідні тексти.

ü  Дійсно надійна система, шанси на те, що одне завдання повалить всю систему, практично рівні нулю.

ü  2-6 мільйонів користувачів по всьому світу.

Порівняльні характеристики 32-розрядних операційних систем

LINUX, так само як і OS / 2, розроблявся і оптимізувався для роботи з процесором I80386 і сумісних з ним. А Windows NT, як очікувалося, повинна була стати новим стандартом операційної системи і була портована на MIPS і DEC Alpha. Всі три ОС підтримують багатозадачний режим роботи, при якому одночасно виконується кілька користувальницьких додатків. У порівнянні з MS-DOS це суттєвий крок вперед. NT підтримує також багатопроцесорний режим роботи, який, втім, орієнтований на роботу тільки з процесором Pentium. NT і Linux підтримують також динамічне кешування дискової пам'яті, у той час як в OS / 2 реалізований традиційний підхід, що складається у виділенні фіксованого обсягу пам'яті. У результаті продуктивність Linux і NT виявляється істотно вище, оскільки необхідні для обробки дані в більшості випадків виявляються вже в кеш-пам'яті. На відміну від OS / 2 і Windows NT багатокористувацька робота підтримується Linux в повному обсязі. Локальні користувачі, віддалені термінали, підключені через модеми, а також користувачі, підключені за допомогою локальної обчислювальної мережі без яких-небудь обмежень можуть одночасно працювати з графічними і символьно-орієнтованими програмами. Для багатьох практичних ситуацій ця можливість ставить Linux поза конкуренцією. Linux має також ряд засобів забезпечення безпеки системи, що запобігають спроби користувачів "зламати машинку". Втім, хоча Windows NT не є багатокористувацької системою, вона перевіряє повноваження подключішегося до неї користувача. Тому ви можете без побоювання надавати мережевий доступ до Linux або NT машині, в той час, як користувач OS / 2 має всі необхідні засоби для навмисного чи ненавмисного руйнування операційної системи. Основні характеристики і можливості аналізованих систем зведені у таблиці.

  Порівняльні характеристики 32-розрядних операційних систем

Параметр

Linux

OS/2

Windows NT

Багатозадачність Так Так Так
Багатопотокова обробка Так Так Так
Багатопроцесорність Ні В розробці Так
Підтримка параллельної роботи Так Ні Ні
Розрахований на багато користувачів режим Так Ні Ні
Легкість портування ОС на іншу платформу Ні Ні Так
Динамічне кешування диску Так Ні Так
Максимальний об’єм пам’яті, що виділяється одному процесу 3 Гбайт 512 Мбайт 2 Гбайт

Підтримуванні мережні протоколи

TCP/IP Так За плату Так
NFS Так За плату Так
IPX/SPX Так За плату За плату
IBM LAN Server Ні За плату Ні
Microsoft LAN Server Ні Ні Так

Підтримуванні файлові системи

FAT (DOS) Так Так Так
HPFS (OS/2) тільки читання Так Так
NTFS (Windows NT) Ні Ні Так
EXT2 (Linux) Так Ні Ні
ISO9660 (CD-ROM) Так Так Так
Network File System (NFS) Так За плату Так
Coherent (UNIX) Так Ні Ні
Stacker Ні Так Ні
DoubleSpace Ні Ні Ні

Підтримні додатки

DOS Так Так Так
16-розрядні додатки Windows В розробці Так Так
16-розрядні додатки OS/2 Ні Так Так
32-розрядні додатки Windows Ні Ні Так
32-розрядні додатки OS/2 Ні Так Ні
POSIX-сумісні програми Так Ні Так
Програми для Macintosh В розробці Ні Ні
Програми SCO UNIX Так Ні Ні
Клієнти “X Window” Так Ні Ні

Очевидно, що кожна додаткова функція, реалізована в системі, приводить до збільшення об'єму системи, що позначається на вимогах до оперативної пам'яті і жорстких дисків. Крім того, чим більше обсяг операційної системи, тим повільніше вона зазвичай працює. Windows NT є найбільшою з розглянутих нами систем. Причиною цього є висока складність системи і великий набір підтримуваних нею функцій. Що, до речі, тільки підвищує конкурентоспроможність системи. Linux (в комплекті з "X Window") є наступною за розміром системою. І нарешті, OS / 2 є найбільш компактною системою. Саме в цьому і полягає привабливість операційної системи, розробленої IBM. Користувачеві необхідно мати тільки 8 Мбайт оперативної пам'яті, щоб долучитися до світу об'єктно-орієнтованого інтерфейсу, і являє собою непогану платформу для багатозадачного роботи з додатками DOS, Windows і OS / 2. Зазначимо, що розмір системи є однією з найбільш сильних характеристик Linux. Cистема спочатку проектувалася максимально компактною і продуктивної, в той час як для NT основним критерієм оптимізації була переносимість, а для OS / 2 - сумісність з попередніми версіями системи. А крім того, оскільки будь-який адміністратор Linux-системи має у своєму розпорядженні повний вихідний текст ОС, вона може бути оптимізована для роботи з конкретним обладнанням і потребами користувача. На жаль, OS / 2 і NT похвалитися такою можливістю не можуть.

Висновок: 1) Windows NT цікавий, оскільки це стійка система, призначена для широко поширених процесорів фірми Intel. OS / 2 цікавий з тієї причини, що це найкраща система для запуску 16-розрядних додатків DOS і Windows, і при цьому надає можливість долучитися до привабливого світу 32-розрядних систем.

2) В обох системах один і той же недолік - і OS / 2 і NT прив'язують користувача до тієї чи іншої технології - адже програми будуть працювати або в OS / 2, або в Windows NT. А ось Linux ця небезпека не загрожує. Програми, розроблені для Linux можуть бути перенесені на будь-яку UNIX-систему.

3) Приємною особливістю Linux є його здатність використовувати програмне забезпечення, призначене для інших РС-орієнтованих версій UNIX, таких, як наприклад, SCO UNIX. Втім, для UNIX-систем поки не реалізовані версії текстових процесорів, порівнянних з можливостями Microsoft Word або Lotus Word Pro. І на жаль, саме цей факт стримує поширення Linux.

 

Системні характеристики

Linux підтримує більшість властивостей, властивих іншим реалізаціям UNIX, плюс низка тих, яких більше ніде немає. Ця голова - поверхневий огляд характеристик ядра Linux. Linux - це повна багатозадачна багатокористувацька операційна система. Це означає, що одночасно багато користувачів можуть працювати на одній машині, одночасно виконувати багато програм. Linux достатньо добре сумісний з низкою стандартів для UNIX (наскільки можна говорити про стандартизацію UNIX) на рівні вихідних текстів, включаючи IEEE POSIX.1, System V і BSD. Він створювався маючи на увазі таку сумісність. Тому, швидше за все, ви знайдете в Linux риси, властиві багатьом UNIX-системам. Більшість вільно розповсюджуваних по мережі Internet програм для UNIX може бути откомпилирован для LINUX практично без особливих змін. Крім того, всі початкові тексти для Linux, включаючи ядро, драйвери пристроїв, бібліотеки, призначені для користувача програми та інструментальні засоби поширюються вільно. Інші специфічні внутрішні риси Linux включають контроль робіт за стандартом POSIX (використовуваний оболонками, такими як csh і bash), псевдотермінали (pty), підтримка національних і стандартних клавіатур, динамічно завантажуються драйверами клавіатур. Linux також підтримує віртуальні консолі ("virtual consoles"), які дозволяють "перемикати екрани" на консолі в текстовому режимі, також дозволяють увійти в систему під декількома іменами в один час. Ядро може саме емулювати команди 387-FPU, так що системи без співпроцесора можуть виконувати програми, на нього розраховують (тобто з плаваючою точкою). Linux підтримує різні типи файлових систем для зберігання даних. Деякі файлові системи, такі як файлова система ext2fs, були створені спеціально для Linux. Підтримуються також інші типи файлових систем, такі як Minix-1 і Xenix. Реалізована також файлова система MS-DOS, що дозволяє прямо звертатися до файлів MS-DOS на жорсткому диску. Підтримується також файлова система ISO 9660. Linux забезпечує повний набір протоколів TCP / IP для роботи в мережі, включаючи драйвери пристроїв для багатьох популярних карт Ethernet, SLIP (Serial Line Internet Protocol, забезпечують вам доступ по TCP / IP при послідовному з'єднанні), PLIP (Parallel Line Internet Protocol), PPP ( Point-to-Point Protocol), NFS (Network File System), і так далі. Підтримується весь спектр клієнтів та послуг TCP / IP, таких як FTP, telnet, NNTP і SMTP. Ядро Linux відразу створене з урахуванням спеціального захищеного режиму для процесорів Intel 80386 і 80486. Зокрема, Linux використовує парадигму опису пам'яті в захищеному режимі й інші нові властивості процесорів. Ядро Linux підтримує завантаження тільки потрібних сторінок. Тобто з диска в пам'ять завантажуються ті сегменти програми, які дійсно використовуються. Можливе використання однієї сторінки, фізично один раз завантаженої в пам'ять, кількома виконуваними програмами. Для збільшення обсягу доступної пам'яті Linux здійснює також розбивка диска на сторінки: тобто на диску може бути виділено до 256 Мбайт "простору для своппінга" (swap space). В область своппінга вивантажується не весь процес, а лише окремі його частини, в яких немає необхідності). Коли системі треба більше фізичної пам'яті, то вона за допомогою своппінга виводить неактивні сторінки на диск. Це дозволяє виконувати більш об'ємні програми і обслуговувати одночасно більше користувачів. Однак свопінг не виключає нарощування фізичної пам'яті, оскільки він знижує швидкодію, збільшує час доступу. Ядро також підтримує універсальний пул пам'яті для користувальних програм і дискового кеша. При цьому для кеша може використовуватися вся пам'ять, і навпаки, кеш зменшується при роботі великих програм. Виконувані програми використовують динамічно зв'язуються бібліотеки, тобто виконувані програми можуть спільно використовувати бібліотечну програму, представлену одним фізичним файлом на диску. Це дозволяє виконуваних файлів займати менше місця на диску, особливо тим, які багаторазово використовують бібліотечні функції. Є також статичні зв'язуються бібліотеки для тих, хто бажає користуватися налагодженням на рівні об'єктних кодів або мати "повні" виконуються програми, які не потребують поділюваних бібліотеках. У Linux Спільні бібліотеки динамічно зв'язуються під час виконання, дозволяючи програмістові заміняти бібліотечні модулі своїми власними. Для забезпечення налагодження ядро Linux видає дампи пам'яті для "посмертного" аналізу. Використання дампа і динамічних отладчиков дозволяє визначити причини краху програми.

  Програмні характеристики

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

1.  Базові команди і утиліти

Практично будь-яка утиліта, яку ви очікуєте знайти в стандартних реалізаціях UNIX, є і в Linux. Сюди включені і базові команди, такі як ls, awk, tr, sed, bc, more і т.д. Тому ви в праві чекати знайомої робочої UNIX-середовища. У Linux є всі стандартні команди та утиліти. Замість перерахування всіх можливих опцій кожної команди, будемо говорити тільки про тих, які корисні або важливі в даний час (Таблиця на наступному сторінці). Дійсно, більшість з цих команд має велике число опцій (більшість з яких ніколи не використовується). Можна для кожної команди за допомогою man подивитися всі можливі опції. У Linux є багато текстові редактори, включаючи vi, ex, pico, jove, також як GNU Emacs і його варіації, начебто Lucid Emacs (який містить розширення для використання під "X Window") і joe. Але vi має багато обмежень по причині свого похилого віку, зараз завойовують популярність більш сучасні та складні редактори начебто Emacs. Emacs підтримує базується на LISP макромова та інтерпретатор, потужний командний синтаксис і інші розширення. Існують Макропакунки Emacs, що дозволяють читати електронну пошту та новини, редагувати вміст каталогів і навіть проводити сеанси психотерапії з використанням штучного інтелекту. Багато користувачів найважливішою утилітою вважають shell. Shell - це програма, яка читає і виконує команди користувача. Крім того, багато оболонки мають такі можливості, як контроль виконання (job control), дозволяючи користувачеві керувати кількома паралельними процесами, також перенаправлення входу-виходу і командна мова для написання командних файлів (shell scripts). Командний файл - це програма на мові оболонки, аналогічна "batch file" в MS-DOS. У Linux багато типів оболонок. Найбільш важлива відмінність між ними - використовуваний командна мова. Наприклад, C Shell (csh) використовує командна мова, що чимось нагадує мову програмування Сі. Класичний Баурновскій shell (Bourne Shell) використовує інший командна мова. Зазвичай вибір оболонки обумовлений вибором відповідного командного мови. Обрана оболонка в якійсь мірі визначає робочу середу. Найбільш популярна оболонка - це GNU Bourne Again Shell (bash), тобто варіант Bourne shell, що включає багато сучасних властивостей і можливостей, таких як управління роботами, командну історію, дописування імені команд та імен файлів, Emacs-подібний інтерфейс редагування командного рядка і потужне розширення стандартної оболонки (Bourne shell). Інша популярна оболонка - tcsh, версія C Shell з більш сучасними функціями у порівнянні з bash. Інші оболонки: zsh - невелика баурно-подібна оболонка; ksh - оболонка Корна; ash - оболонка BSD. Що особливо важливо сказати щодо цих оболонок? - Linux дає унікальну можливість кроїти систему під наші особисті потреби.

Команда

Що робить

Синтаксис

Cd

Змінює каталог

Cd <directory>; <directory> - каталог, в який перейти.

Ls

Показує інформацію про файли в каталозі

Ls <file1> ... <fileN> Де <file1> ... <fileN> імена файлів або каталогів, информацію про які треба показати.

Велика кількість опцій . Найбільш часто використовуються: -F (для представлення інформації про типи файлів), і -l (показує інформацію про размір файлів, правах доступа і .д.).

Cp

Копіює файл(и) в файл або каталог

Cp <file1> ... <fileN> <destination> Де <file1> ... <fileN> імена копіюємих файлів, а <destination> файл або каталог, в який копіюють.

Mv

Переміщає файл(и) в інший файл або каталог

Mv <file1> ... <fileN> <destination> Де <file1> ... <fileN> імена переміщюємих файлів, а <destination> файл або каталог, в який переміщюють

Rm

Видаляє файли

Rm <file1> ... <fileN> Де <file1> ... <fileN> імена видаляємих файлів.

Mkdir

Створює нові каталоги

Mkdir <dir1> ... <dirN>

Rmdir

Видаляє пусті каталоги

rmdir <dir1> ... <dirN> Де <dir1> ... <dirN> видаляємі каталоги

Man

Показує сторінку керівнитства по данній комані чи ресурсу.

man <command> Де <command> ім’я команди чи ресурса, про який потребується інформація

More

Показує вміст названих файлів по-екранно

more <file1> ... <fileN> Де <file1> ... <fileN> відображаємі файли

Cat

Конкатенація файлів. Також використовується для выдачі повного змісту файлу разом

cat <file1> ... <fileN> Де <file1> ... <fileN> показуємі файли

Echo

Повторює аргументи

echo <arg1> ... <argN> Де <arg1> ... <argN> "повторяемі" аргументи.

Grep

Показує всі строки в названом файлі(лах), які вміщає заданий образець

grep <pattern> <file1> ... <fileN> Де <pattern> - образець и <file1> ... <fileN> - файли, в яких проводиться пошук

 


Информация о работе «Операційна система Linux»
Раздел: Информатика, программирование
Количество знаков с пробелами: 30347
Количество таблиц: 2
Количество изображений: 0

Похожие работы

Скачать
27010
0
0

... із них: Red Hat, Mandrake, Debian, ASP, LFS. Посібник призначений для початкового ознайомлення з Linux і отримання основних практичних навичок для роботи із цією ОС. В посібнику є 7 тем: команди операційної системи Linux; текстовий редактор vi (vim); складання сценаріїв; графічна система X Window; робочі столи користувача; основи адміністрування в Linux; процеси і роботи. Кожна ...

Скачать
42736
0
2

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

Скачать
25523
0
0

... ється мікроядром. У такій схемі ядро має менший розмір і взаємодіє із зовнішніми компонентами, що реалізовують традиційні функції ядра, зокрема доступ до файлової системи. У кожного підходу є свої прихильники. FreeBSD - це операційна система з відкритим вихідним кодом. Більшість її компонентів поширюється на умовах ліцензії BSD. Ця ліцензія дозволяє модифікацію і подальше розповсюдження вихідного ...

Скачать
98338
2
0

... і друку інформації про конфігурацію системи. ·             Backup. Засоби архівування даних призначені для резервного копіювання інформації на локальний носій на магнітній стрічці. Операційна система Windows NT завжди володіла прекрасними і широко застосовними на практиці можливостями захисту. Однократна реєстрація в домені Windows NT надає користувачам доступ до ресурсів всієї корпоративної ...

0 комментариев


Наверх