Съвременни операционни системи

Системен и приложен софтуер

Съвременният компютър е сложно техническо съоръжение, способно да изпълни предписанията на произволна програма, за да реши интересна за потребителя задача или да задоволи потребност от съхраняване, обработка или изобразяване на данни.

При цялото си разнообразие, съвкупността от програми (софтуерът) може да се раздели на две големи подсъвкупности, в зависимост от кръга потребители, за които представлява интерес. Едни програми имат предназначение, което ги прави полезни и необходими за всеки потребител. Тази част от програмите за един компютър се нарича системен софтуер. Други програми представляват интерес само за отделни потребители (в частност – за един потребител). Съвкупността от такива програми наричаме приложни (англ. applications).

В системния софтуер също могат да се обособят две групи програми. Първата група е комплекс от взаимно свързани програми и се нарича операционна система (ОС). В другата група програмите са независими и се наричат инструментални програми (англ. utilities). Отношението „инструментални програми – ОС“ е както отношението „приложни програми – системен софтуер“ (виж. Фиг. 1).

В уроци по информационни технологии от предишни класове се запознахме с различни представители както на системния, така и на приложния софтуер. Изучихме възможностите на ОС Microsoft Windows. Добре познаваме възможностите на приложните програми от пакета MS Offi ce – MS Word, MS PowerPoint и MS Excel, на графичния редактор Paint, на програмата за работа със звук Sound Recorder, както и на други приложни програми. От инструменталните програми на ОС Microsoft Windows най-добре познаваме програмата Windows Explorer, предназначена за работа с файловата система и програмата Start, предназначена за стартиране на програми.

Функции на операционната система

Операционните системи са съвкупности от програми, проектирани и създадени да работят в система, т.е. осъществявайки по време на работа на сложни взаимни връзки. Предназначението им е да осигурят, от една страна, удобство на потребителя, а от друга – ефективното използване на ресурсите на компютъра. Основните функции на ОС можем да групираме в три основни групи:
🔴 Управление на изпълняването на програми;
🔴 Осъществяване на диалога с потребителя на компютърната система;
🔴 Управление на входно-изходните устройства.
В уроци от предишни години научихме как да намираме нужната ни приложна или инструментална програма, как да я стартираме и спираме. Научихме се и да управляваме много от приложните програми, инсталирани стандартно (или допълнително) в MS Windows. На принципите, по които се осъществява общуването на потребителя с програмите, ще се спрем по-подробно в този урок, а на управлението на входно-изходните устройства – в друг урок от този раздел.

Диалог с потребителя


Основно предназначение на софтуера е да създаде на потребителя такива условия за работа с компютъра, че да му спести многобройните затруднения, свързани с използуване на такова сложно устройство. Благодарение на софтуера, с компютър могат да си служат дори потребители в ранна детска възраст. Този ефект се постига благодарение на специализирани езици, наричани интерфейси (англ. interface), с помощта на които общуват помежду си потребителят и компонентите на компютърната система – хардуерът и софтуерът. Всеки два, общуващи си обекта, използват понятен за двете страни интерфейс. Централният процесор на компютъра, например „разбира“ само своя машинен език, затова програмите по същество трябва да бъдат превеждани на този език от специализирани приложни програми – транслатори. За да играете на компютърна игра обаче, не е необходимо да знаете този език. Програмата, която реализира играта, предоставя подходящ за целта език/интерфейс, понятен за потребителя.

При работа с компютъра потребителят взаимодейства както с приложния, така и със системния софтуер. Приложният софтуер от своя страна, използва възможностите, предоставяни от системния софтуер, а системният софтуер взаимодейства директно с хардуера. На Фиг. 1 е показано общуването между потребителя и компютърната система, както и между компонентите на системата, осъществявано с помощта на подходящи интерфейси, показани на схемата със стрелки. Интерфейсите между софтуера и хардуера са сравнително постоянни, до голяма степен определени от конкретния компютър (споменатият вече машинен език, например) и ОС. Интерфейсите между потребителя и системния софтуер са по-динамични – ако сте работили с различни версии на ОС Windows, сте забелязали разлики в интерфейсите, които предоставят различните версии. Интерфейсите между приложните програми и потребителите винаги са били разнообразни, защото се проектират, така че да съответствуват на приложението и подготовката на потребителя.

Съвременните ОС предлагат два доста различни типа интерфейси – графичен и команден (или буквено-цифров). В уроците от предишни години систематично се запознахме с графичния интерфейс. Основа на графичния интерфейс е прозорецът – обособена правоъгълна част от екрана (откъдето произлиза и името и́), в която се разполагат останалите елементи на интерфейса. Според предназначението им, разграничаваме два типа прозорци прозорци на програми и диалогови прозорци.


Програмите, които са създадени да работят с графичен интерфейс, при стартирането си отварят на екрана своя основен прозорец. В него най-често е разположено работното поле на програмата (такова поле имаха повечето приложни програми, които познаваме) и лентите с инструменти за управляване работата на програмата. Прозорците на програми, в общия случай, можем да местим по екрана, да променяме размерите им, да ги поставяме един върху друг, да ги минимизираме в лентата на задачите, когато не са ни необходими и да ги възстановяваме от там, когато ни потрябват. Затварянето на основния прозорец на програмата прекратява изпълнението ѝ.

Управляването на работата на програмите става с помощта на команди, някои от които са с един или повече параметри. Стартирането на команда в програмите с графичен интерфейс става чрез щракване с мишката на определен за целта елемент на графичния интерфейс – (командни) бутони. Някои от тях са оформени така, че да приличат на бутоните на различни уреди. Други са малки изображения – икони, които напомнят за предназначението на командата. Трети – изписан на екрана текст. Текстовите командни бутони обикновено се групират в менюта, като някои от бутоните в едно меню не стартират команда, а отварят друго меню. Иконите за стартиране на команди също се групират, като в зависимост от начина на изобразяване на екрана, наричаме тези групи инструментални ленти, инструментални кутии, палитри и т.н.

Задаването на параметри за командите, които го изискват, става с помощта на диалогови прозорци. Диалоговите прозорци са по-просто устроени от прозорците на програмите – размерът им не може да се променя и не е възможно да се минимизират. Диалоговите прозорци са съставени от една или повече страници. Най-често използваните в диалогови прозорци елементи на графичния интерфейс са: текстовите кутии (text box), в които въвеждаме текстове; комбинираните кутии (combo box), при които въвеждаме параметъра като в текстова кутия или избираме параметъра от списък; постъпковите числови кутии, при които числовата стойност в кутията може да се увеличава или намалява (с помощта на съответни бутони) с определена стъпка; кутии за избор (check box), чрез които се задават параметри, които могат да имат само две стойности – да/ нe, включен/изключен и т.н.; радио-бутони (radio buttons), за избиране на точно една от няколко възможности.


В диалоговия прозорец може да се разполагат и командни бутони. Обичайно е диалоговият прозорец да има бутони за край на диалога – за потвърждаване (OK) или за отказ (Cancel) на изпълнението на командата.
Възможно е и наличието на командни бутони, с които се отварят нови диалогови прозорци, за задаване на други аргументи на командата. Често до елемента на графичния интерфейс или върху него се поставя етикет (англ. label) – текст или икона, които поясняват предназначението на елемента.

Команден интерфейс

Освен графичния интерфейс, съвременните ОС предоставят на потребителя и друга възможност за диалог – буквено-цифров (или команден) интерфейс. Всъщност до появата на графичните монитори, ОС предоставяха само команден интерфейс. Днес този интерфейс изглежда остарял и ненужен. За обикновения потребител това е действително така. Но редица важни дейности, извършвани обикновено от администраторите на компютърните системи и мрежи от компютри, се реализират все още чрез този интерфейс.
Както при графичния интерфейс, така и при командния, диалогът между потребителя и ОС се извършва с помощта на команди. Всяка команда има име и може да има един или няколко параметъра, с които се управлява работата ѝ. Една от инструменталните програми на ОС, наречена команден интерпретатор, получава въвежданата от потребителя команда и осигурява изпълнението ѝ, директно, или използвайки съответна функция на ОС. След завършване на изпълнението на командата, командният интерпретатор може да получи нова команда от потребителя.

Изпълняваните от командния интерпретатор команди можем да разделим на три вида:
🔴 Командите за изпълнение на програми предизвикват изпълнението на съответната приложна програма (в ОС Windows това са файловете с разширения exe, com и др). В този случай името на командата съвпада с името на приложната програма (със или без разширението). Ако програмата изисква параметри, те се изписват в определен ред след името на командата. За да изпълни командата, интерпретатор се обръща към частта на ОС, която осигурява изпълнението на програми.
🔴 Командите за изпълнение на вградени в командния интерпретатор функции по външен вид не се различават от командите за изпълнение на програми, но имената им не са свързани с приложни програми, а с обособени части от командния интерпретатор и се изпълняват от самия команден интерпретатор.

🔴 Командните процедури са текстови файлове, в които са записани поредици от команди – за изпълнение на програми, на вградени функции или на други командни процедури. Когато командният интерпретатор получи команда за изпълнение на процедура, той чете командите от текстовия файл и изпълнява всяка от командите, според вида ѝ. В ОС Windows, името на текстовия файл, съдържащ командна процедура, трябва да е с разширение bat. Името на командата за изпълнение на командна процедура съвпада с името на текстовия файл. Всъщност командните интерпретатори допускат много по-сложен и мощен механизъм за създаване на командни процедури, отколкото простото изреждане на команди, както и настройването на командите с помощта на параметрите на процедурата.

В ОС с графичен интерфейс има два начина за използването на командния интерфейс. Единият е да напуснем графичния интерфейс, със съответна клавишна комбинация, и да се върнем обратно, когато е необходимо. Другият начин е да отворим прозорец за работа с команден интерфейс. Този начин е много по-удобен за потребителите, привикнали да работят с графичен интерфейс. В ОС Windows 7 стартираме команден интерпретатор с бутона или въвеждаме cmd в текстовата кутия в долния край на менюто start.

На Фиг. 2 е показан прозорецът за команден интерфейс на ОС Windows. След идентификацията на версията на ОС, командният интерпретатор е изписал пълното име на папката, която за него е текуща в момента, знакът >, след който въвеждаме поредната команда. На фигурата е показана командата, която ще предизвика стартирането на програмата Notepad.

Други операционни системи

ОС Windows, с многобройните си версии, е може би най-популярната ОС за компютри с ЦП от тип Intel. Не по-малко разпространена в наши дни е и ОС UNIX (ЮНИКС), работеща не само на персонални компютри, но и на големи сървъри и суперкомпютри с огромна изчислителна мощ. Безусловно най-популярни в наши дни UNIX-подобни ОС са и различните варианти/дистрибуции на ОС Linux (Линукс), предназначени за компютри с ЦП от тип Intel (Ubuntu/Debian, Red Hat/Fedora, Mandriva, Slackware и др.). Поради значителната популярност на компютрите Macintosh на фирмата Apple (с ЦП Motorola) доста разпространени са версиите на предназначената да работи само на такива компютри ОС, Mac OS. Поради извънредното нарастване на популярността в последните години на мобилните компютърни устройства (смартфони и таблети) естествено нараства и популярността на ОС за мобилни устройства.

Тук ще представим съвсем накратко Linux дистрибуцията Ubuntu, а на най-популярните ОС за мобилни устройства ще се спрем в следващ урок. На Фиг. 3 е показано работното поле на ОС Ubuntu. Както се вижда, графичният интерфейс на тази ОС не се различава съществено от графичния интерфейс на Windows. В ляво е лентата на задачите, в която са иконите на: програмата за разглеждане на файловата система , аналог на Windows Explorer; програмата за работа с текстови документи, аналог на MS Word, програмата за работа с презентации, аналог на MS PowerPoint, браузерът Mozilla Firefox и др.

С натискане на бутона в лентата на задачите се отваря прозорецът на командния интерпретатор на Ubuntu, показан също на фигурата. Командите на интерпретатора в Ubuntu са подобни на командите на интерпретарора в Windows. Дизайнът на прозорците се различава малко от този на Windows, но в горния ляв ъгъл се виждат бутоните – за затваряне на прозореца за минимизиране и максимизиране, съответно, аналогични на бутоните в Windows.
Над прозореца на командния интерпретатор на фигурата се виждат иконите на две папки и два файла – текстов и презентация, създадена в Windows.

С щракване на съответната икона, точно както в Windows, се отваря приложната програма асоциирана със съответния файл. С щракване върху иконата на файла с презентация се стартира програмата за работа с презентации Impress от пакета LibreOffi ce (аналози на MS PowerPoint и MS Offi ce, съответно). Прозорецът на програмата е показан на Фиг. 4. Тя разпознава файловия формат pptx и може да отваря презентации създадени с MS PowerPoint и да записва създадените с нея презентации в същия формат. Както се вижда, прозорецът на Impress е подобен на прозореца на PowerPoint.

В заключение да отбележим също, че Ubuntu разпознава файловата система на Windows и затова може с лекота да се пренасят файлове от Windows в Ubuntu и обратно.

Въпроси и задачи

1. Обяснете разликата между системен и приложен софтуер. Посочете примери за системен и приложен софтуер, с който сте работили.
2. Посочете примери на инструментални програми, с които сте работили.
3. Какви възможности за стартиране на програма в ОС Windows познавате?
4. Кое е основното входно устройство за работа с графичния интерфейс?
5. Посочете различни възможности за стартиране на една и съща команда в програмите, работещи с графичен интерфейс.
6. Избройте няколко менюта, които се срещат в прозорците на повечето програми, работещи с графичен интерфейс.
7. Посочете примери на елементи на графичния интерфейс, които не са споменати в урока.
8. Кое е основното входно устройство за работа с командния интерфейс?
9. Отворете прозорец за команден интерфейс, напишете dir и натиснете клавиша Enter, за да видите съдържанието на текущата папка.
10. Ако в текущата папка има други папки, влезте в една от тях с командата cd с параметър името на подпапката и разгледайте съдържанието ѝ. С командата cd .. се върнете обратно в родителската папка.
11. Ако в текущата папки има текстов файл, изведете съдържанието му в прозореца на командния интерпретатор с командата type с параметър името на файла.
12. Потърсете в Интернет описание на командите на Windows и изпълнете някои от тях.
13. Влезте в ОС Ubuntu, пренесете там файл, създаден с MS Offi ce, и се опитайте да го редактирате. Запазете промените и върнете файла обратно в Windows.