# Апэрацыйная сыстэма

Узаемадзеяньне паміж рознымі складнікамі сыстэмы.
**Апэрацы́йная сыстэ́ма** — праграмнае забесьпячэньне, адказнае за кантроль і кіраваньне кампутарным абсталяваньнем і падставовыя сыстэмныя апэрацыі.

## Прыклады сучасных апэрацыйных сыстэмаў

### Microsoft Windows

Microsoft Windows — сямейства прыватнаўласьніцкіх апэрацыйных сыстэмаў. Гэта найбольш распаўсюджаная апэрацыйная сыстэма для пэрсанальных кампутараў. Яна зарадзілася ў 1981 годзе ў якасьці дапаўненьня да апэрацыйнай сыстэмы MS-DOS для IBM-сумяшчальных пэрсанальных кампутараў. Ўпершыню апублікаваная ў 1985 г.

Пачынаючы з Windows XP, усе сучасныя вэрсіі зробленыя на падставе ядра Windows NT.

Windows таксама выкарыстоўваецца на сэрвэрах, якія падтрымліваюць такія прыкладаньні, як вэб-сэрвэры і сэрвэры базаў зьвестак.

### Unix і Unix-падобныя апэрацыйныя сыстэмы

Кен Томпсан напісаў мову праграмаваньня B, галоўным чынам, на падставе BCPL, якую ён выкарыстаў, каб напісаць Unix, на аснове яго досьведу працы ў праекце MULTICS. У ім былі замененыя на C, і зь цягам часу Unix ператварылася ў вялікае, складанае сямейства ўзаемазьвязаных апэрацыйных сыстэмаў, якое паўплывала на ўсе сучасныя АС.

Назва «UNIX» зьяўляецца гандлёвай маркай The Open Group. Для абазначэньня доўгага шэрагу апэрацыйных сыстэмаў, якія падобныя на арыгінальны Unix, але ня маюць ліцэнзіі The Open Group, ужываецца назва «Unix-падобныя».

Некаторыя варыянты Unix, такія як HP-UX ад Hewlett-Packard і AIX ад IBM, прызначаныя для выкарыстаньня толькі на абсталяваньні вытворцы. Іншыя, такія як Solaris ад Sun Microsystems, могуць працаваць на розных тыпах апаратных плятформаў, уключаючы x86 сэрвэры і ПК. Сучасная АС Mac OS X ад Apple мае гібрыднае ядро на падставе варыянта BSD, атрыманае ад NeXTSTEP, Mach і FreeBSD.

Сумяшчальнасьць Unix дасягаецца шляхам падтрымкі стандартаў POSIX. Стандарты POSIX могуць быць ужытыя да любой апэрацыйнай сыстэмы, хаця пачаткова былі створаныя для розных варыянтаў Unix.

#### BSD і нашчадкі

Падгрупу сям’і Unix утварае сямейства Berkeley Software Distribution, якое ўключае FreeBSD, NetBSD і OpenBSD. Гэтыя апэрацыйныя сыстэмы найбольш часта сустракаюцца на вэб-сэрвэрах, хоць яны могуць таксама працаваць у якасьці апэрацыйнай сыстэмы пэрсанальнага кампутара.

Інтэрнэт шмат у чым абавязаны сваім існаваньнем BSD, таму што многія з пратаколаў, якія ў цяперашні час шырока выкарыстоўваюцца для падлучэньня кампутараў, перадачы й атрыманьня дадзеных па сетцы, былі ў значнай ступені распрацаваныя і ўдасканаленыя менавіта ў BSD. World Wide Web быў ўпершыню прадэманстраваны на некалькіх кампутарах пад кіраваньнем NextStep, апэрацыйнай сыстэме на падставе BSD.

BSD мае свае карані ў Unix. У 1974 годзе Каліфарнійскі ўнівэрсытэт у Бэрклі ўсталяваў свае першыя сыстэмы Unix. Зь цягам часу, студэнты й выкладчыкі ўнівэрсытэту пачалі дадаваць новыя праграмы, такія як тэкставыя рэдактары, каб зрабіць лягчэй сваю працу. Калі ўнівэрсытэт Бэрклі атрымаў новы кампутар VAX у 1978 годзе з усталяваным Unix, студэнты зьмянілі Unix нават больш, для таго, каб выкарыстоўваць апаратныя магчымасьці кампутара. Агенцыя пэрспэктыўных абаронных дасьледаваньняў (DARPA) Міністэрства абароны ЗША праявіла цікавасьць і прыняла рашэньне пра фінансаваньне праекту. Многія школы, карпарацыі і ўрадавыя арганізацыі зьвярнулі ўвагу і сталі выкарыстоўваць вэрсіі Unix ад Бэрклі, замест таго, што афіцыйна распаўсюджвалася AT&T. Стыў Джобс, пасьля выхаду з карпарацыі Apple ў 1985 годзе, заснаваў NeXT Inc, кампанію, якая вырабляла кампутары, якія працуюць на зьмененым BSD пад назвай NeXTSTEP. Адна з гэтых машынаў была выкарыстаная Тымам Бэрнэрс-Лі, як першы вэб-сэрвэр для стварэньня World Wide Web.

#### Mac OS X

Mac OS X — гэта лінія часткова прыватнаўласьніцкіх графічных апэрацыйных сыстэмаў, якія распрацоўвае, прасоўвае і прадае карпарацыя Apple. Апошнюю вэрсію гэтай АС устанаўліваюць на ўсе кампутары Macintosh. Mac OS X зьяўляецца пераемнікам арыгінальнае Mac OS, якая была асноўнай апэрацыйнай сыстэмай кампутараў Apple, пачынаючы з 1984 г. У адрозьненьне ад свайго папярэдніка, Mac OS X — гэта UNIX, пабудавана па тэхналёгіі, якая была распрацаваная ў NeXT цягам другой паловы 1980-х гадоў і да пачатку 1997 году, калі кампанію набыла карпарацыя Apple.

Упершыню апэрацыйная сыстэма была выпушчаная ў 1999 годзе як Mac OS X Server 1.0, затым зьявілася арыентаваная на пэрсанальны кампутар вэрсія (Mac OS X 10.0) у сакавіку 2001 г.

#### Plan 9

У свой час Кен Томпсан, Дэніс Рычы і Дуглас Макілрой у Bell Labs распрацавалі мову праграмаваньня C для стварэньня апэрацыйнай сыстэмы Unix. Наступныя распрацоўкі праграмістаў Bell Labs уключаюць Plan 9 і Inferno, апэрацыйныя сыстэмы для сучасных разьмеркаваных вылічальных асяродзьдзяў. Plan 9 зараз выпушчана пад Lucent Public License. Inferno была прададзена Vita Nuova Holdings і выпушчана пад GPL і MIT ліцэнзіямі.

### Linux і GNU

Linux — агульная назва UNIX-падобных апэрацыйных сыстэмаў, якія могуць быць выкарыстаны на шырокім шэрагу прыстасаваньняў ад супэркампутараў да наручных гадзіньнікаў. Ядро Linux выпускаецца пад ліцэнзіяй GNU GPL, таму кожны можа чытаць і зьмяняць ягоны код.

Праект GNU — гэта масавае супрацоўніцтва праграмістаў, якія імкнуцца стварыць абсалютна свабодную і адкрытую апэрацыйную сыстэму, якая была б падобная на Unix, але мела цалкам арыгінальны выточны код. Праект быў распачаты ў 1983 годзе Рычардам Столманам, і адказны за многія часткі большасьці варыянтаў Linux. Па гэтай прычыне, Linux часта называюць GNU/Linux.

Тысячы праграмаў практычна для любой апэрацыйнай сыстэмы распаўсюджваюцца на ўмовах GNU General Public License — ліцэнзіі, створанай Рычардам Столманам для праекту GNU.

#### Google Chrome OS

Chrome OS — апэрацыйная сыстэма, створаная кампаніяй Google на падставе ядра Linux. Мэтавая аўдыторыя Chrome — кампутарныя карыстальнікі, якія трацяць большую частку свайго часу на Інтэрнэт. З тэхнічнага боку гэта адзіны вэб-браўзэр, у якім выкарыстоўваюцца інтэрнэт-прыкладаньні для выкананьня такіх задачаў, як апрацоўка тэкстаў і прагляд мультымэдыя.

### Іншыя

Старыя апэрацыйныя сыстэмы, якія да гэтага часу выкарыстоўваюцца на нішавых рынках, ўключаюць OS/2 ад IBM і Microsoft; Mac OS, папярэднік сучаснай Mac OS X; BeOS; XTS-300. Некаторыя зь іх, перш за ўсё RISC OS, MorphOS і AmigaOS 4 працягваюць разьвівацца як вузкія плятформы для суполак энтузіястаў і спэцыялізаваных прыкладаньняў. OpenVMS, першапачаткова ад DEC, да гэтага часу ў стадыі актыўнай распрацоўкі ў Hewlett-Packard.

Некаторая колькасьць іншых апэрацыйных сыстэмаў выкарыстоўваюцца амаль выключна ў акадэмічным асяродзьдзі, пры выкладаньні апэрацыйных сыстэмаў, і для дасьледаваньняў канцэпцыяў разьвіцьця апэрацыйных сыстэмаў. Тыповым прыкладам сыстэмы, якая выконвае абедзьве ролі, зьяўляецца MINIX, у той час як, напрыклад, Singularity выкарыстоўваецца выключна для навуковых дасьледаваньняў.

## Кампанэнты

Усе кампанэнты апэрацыйнай сыстэмы існуюць для таго, каб розныя часткі кампутара маглі працаваць разам. Усе праграмнае забесьпячэньне, ад фінансавых базаў дадзеных да рэдактараў фільмаў, павінна зьвяртацца да апэрацыйнай сыстэмы для таго, каб выкарыстаць любыя апаратныя сродкі, ці то простыя, як мыш або клявіятура, альбо складаныя, як падключэньне да Інтэрнэту.

### Інтэрфэйс карыстальніка

Кожны кампутар, які атрымлівае нейкія запыты ад чалавека, павінен мець інтэрфэйс карыстальніка, які дазваляе чалавеку ўзаемадзейнічаць з кампутарам. У той час як такія прылады, як клявіятура, кампутарная мыш і сэнсарны экран, складаюць апаратную частку гэтай задачы, карыстальніцкі інтэрфэйс складае ягоную праграмную частку.

Дзьвюма самымі распаўсюджанымі формамі інтэрфэйсу карыстальніка гістарычна зьяўляюцца інтэрфэйс загаднага радка, дзе загады кампутару трэба набіраць радок за радком, і графічны інтэрфэйс карыстальніка, дзе прысутнічае візуальнае асяродзьдзе (часьцей за ўсё з вокнаў, кнопак і значкоў).

#### Графічны інтэрфейс карыстальніка

Большасьць сучасных кампутарных сыстэмаў падтрымліваюць графічны інтэрфэйс карыстальніка (па-ангельску: *GUI*, ад *Graphical User Interface*), і звычайна ўключаюць яго. У некаторых апэрацыйных сыстэмах, такіх як Microsoft Windows і Mac OS , GUI убудаваны ў ядро. Іншыя апэрацыйныя сыстэмы маюць модульную канструкцыю, аддзяляючы графічную падсыстэму ад ядра АС. GNU/Linux і Mac OS X пабудаваны такім чынам.

Многія апэрацыйныя сыстэмы дазваляюць карыстальніку ўсталяваць або ствараць любы карыстальніцкі інтэрфэйс у адпаведнасьці зь іх пажаданьнямі. X Window System ў спалучэньні з GNOME ці KDE звычайна сустракаюцца на большасьці Unix і Unix-падобных (BSD, GNU/Linux, Solaris) сыстэмах. Шэраг заменаў абалонкі Windows, якія прапануюць альтэрнатывы ўбудаванай абалёнцы, былі выпушчаныя, але ўбудаваная абалонка ня можа быць аддзеленай ад Windows. Існуюць шматлікія варыянты графічнага інтэрфэйсу для Unix і Unix-падобных АС, большасьць зь іх — вытворныя ад X11 (X Window System).

Графічныя інтэрфэйсы карыстальніка зьмянюцца зь цягам часу. Напрыклад, Windows зьмяняла свой карыстальніцкі інтэрфэйс амаль кожны раз, калі выходзіла новая вэрсія АС, а графічны інтэрфэйс Mac OS рэзка зьмяніўся са зьяўленьнем Mac OS X ў 1999 годзе.

### Ядро

Ядро злучае прыкладное праграмнае забесьпячэньне і абсталяваньне кампутара.

З дапамогай мікрапраграмаў у пастаяннай памяці прыстасаваньняў (па-ангельску: *firmware*) і драйвераў прыладаў (па-ангельску: *device drivers*), апэрацыйная сыстэма забясьпечвае базавы ўзровень кантролю над апаратнай часткай кампутара. Функцыі апэрацыйнай сыстэмы звычайна ўключаюць: вылучэньне памяці для праграмаў, кіраваньне доступам праграмаў да апаратных рэсурсаў, арганізацыю дадзеных (сродкамі файлавай сыстэмы) для іх доўгатэрміновага захоўваньня і да т. п.

#### Выкананьне праграмы

Апэрацыйная сыстэма забясьпечвае набор паслугаў, якія спрашчаюць распрацоўку прыкладаньняў. Выкананьне праграмы прадугледжвае стварэньне апэрацыйнай сыстэмай працэсу. Ядро стварае працэс, вылучае яму памяць і іншыя рэсурсы, задае прыярытэт (у шматзадачных сыстэмах), загружае праграмны код у памяць і запускае выкананьне праграмы.

#### Перарываньні

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

Большасьць сучасных працэсараў прадстаўляе сродкі падтрымкі праграмаваньня з выкарыстаньнем перарываньняў. Па ўзьнікненьні перарываньня апаратная частка кампутара аўтаматычна прыпыняе ўсе праграмы, якія ў гэты момант працуюць, захоўвае свой статус, і запускае код, раней зьвязаных зь перарываньнем. У сучасных апэрацыйных сыстэмах перарываньні апрацоўвае ядро апэрацыйнай сыстэмы. Перарываньні могуць паступаць яд апаратнай часткі кампутара, так і ад запушчаных праграмаў.

Калі кампутарная прылада выклікае перарываньне, ядро апэрацыйнай сыстэмы вырашае, што рабіць з гэтай падзеяй, як правіла, выконваючы нейкі код апрацоўкі перарываньня. Аб’ём коду, які будзе выкананы, залежыць ад прыярытэту перарываньня. Задачу апрацоўкі апаратнага перарываньня звычайна дэлегуюць праграме пад назвай «драйвэр прылады», які можа быць часткай ядра апэрацыйнай сыстэмы, часткай іншай праграмы, ці абодвух. Драйвэры прыладаў могуць потым перадаць інфармацыю запушчаным праграмам.

Праграма таксама можа стаць прычынай перарываньня. Калі праграма хоча атрымаць, напрыклад, доступ да абсталяваньня, яна можа выклікаць перарываньне, што прывядзе да перадачы кіраваньне назад у ядро. Далей ядро будзе апрацоўваць запыт. Калі праграме патрэбны дадатковыя рэсурсы (ці трэба вызваліць рэсурсы), напрыклад памяць, яна выкліча перарываньне, каб прыцягнуць увагу ядра.

#### Рэжымы

Сучасныя працэсары падтрымліваюць некалькі рэжымаў працы. Працэсар у такім выпадку рэалізуе як мінімум два рэжымы: абаронены рэжым і прывілеяваны рэжым. Прывілеяваны рэжым выкарыстоўвае ядро апэрацыйнай сыстэмы для задачаў зь нізкім узроўнем, для якіх неабходны неабмежаваны доступ да абсталяваньня, такіх як кантроль над запісам і сьціраньнем памяці, і зносіны з прыладамі, такімі як відэакарткі. Абаронены рэжым, наадварот, ужываецца амаль для ўсіх астатніх задачаў. Прыкладаньні працуюць у абароненым рэжыму, і могуць выкарыстоўваць апаратныя сродкі толькі праз узаемадзеяньне зь ядром, якое кантралюе ўсё ў прывілеяваным рэжыме.

Працэсар можа таксама рэалізоўваць іншыя, падобныя на абаронены, рэжымы, напрыклад, віртуальны рэжым, каб эмуляваць стары тып працэсара, напрыклад, 16-разрадны працэсар у 32-разрадным, ці 32-бітны працэсар у 64-бітным.

Пры пачатковым запуску кампутара ён аўтаматычна працуе ў прывілеяваным рэжыме. Першыя некалькі праграмаў, неабходныя для працы кампутара — BIOS, загрузчык і апэрацыйная сыстэма — маюць неабмежаваны доступ да абсталяваньня, і гэта натуральна, бо ініцыялізацыя абароненага асяродзьдзя можа быць зроблена толькі па-за яго межамі.

У абароненым рэжыме, праграмы могуць мець доступ да абмежаванага набору інструкцый працэсара. Карыстальніцкая праграма можа пакінуць абаронены рэжым толькі выклікам перарываньня, у выніку чаго кіраваньне будзе перададзена ядру. Такім чынам апэрацыйная сыстэма захоўвае поўны кантроль над такімі рэчамі, як доступ да памяці і абсталяваньня.

#### Кіраваньне памяцьцю

Сярод іншага, ядро шматзадачнай і шматкарыстальніцкай апэрацыйнай сыстэмы павінна несьці адказнасьць за кіраваньне ўсёй сыстэмнай памяцьцю, якую выкарыстоўваюць бягучыя праграмы. Гэта гарантуе, што праграма не ўмешвацца ў памяць, якую ўжо выкарыстоўвае другая праграма.

Каапэратыўная мадэль кіраваньня памяцьцю, якую можна было сустрэць у многіх раньніх апэрацыйных сыстэмах, мяркуе, што ўсе праграмы добраахвотна выкарыстоўваюць сыстэмны мэнэджар памяці, і не перавышаюць выдзелены ім абсяг памяці. Гэту сыстэму кіраваньня памяцьцю сёньня амаль немагчыма сустрэць. У рэальнасьці праграмы часта ўтрымліваюць памылкі, якія могуць прывесьці да перавышэньня выдзеленай памяці. Калі праграма «робіць памылку», гэта можа прывесьці да таго, што будзе закранута або перапісана памяць іншых праграмаў. Шкоднасныя праграмы, ці вірусы, могуць мэтанакіравана зьмяняць памяць другіх праграмаў, ці могуць паўплываць на працу самой апэрацыйнай сыстэмы. Пры каапэратыўным кіраваньні памяцьцю дастаткова толькі адной няспраўнай праграмы, каб парушыць працу ўсёй сыстэмы.

Абарона памяці дазваляе ядру абмежаваць доступ працэсаў да памяці кампутара. Існуюць розныя мэтады абароны памяці, у тым ліку сэгмэнтацыя памяці і пагінацыя. Усе мэтады патрабуюць пэўнага ўзроўню апаратнай падтрымкі (напрыклад, 80286 MMU), які забясьпечваюць ня ўсе кампутары.

І пры сэгмэнтацыі і пры пагінацыі, пэўныя рэгістры абароненага рэжыму паказваюць працэсару, які адрас памяці ён можа дазволіць бягучай праграме для доступу. Спробы атрымаць доступ па іншых адрасах выклічуць перарываньне, якое прымусіць працэсар перайсьці ў прывілеяваны рэжым і перадаць кіраваньне ядру. Такі выпадак называюць парушэньнем сэгмэнтацыі, і, паколькі, з аднаго боку, цяжка прызначыць асэнсаваны вынік для такой апэрацыі, а з другога, такія дзеяньні звычайна зьяўляюцца прыкметай памылкі ў праграме, ядро тыпова прымае рашэньне завершыць праграму, і паведаміць пра памылку.

#### Віртуальная памяць

Многія апэрацыйныя сыстэмы могуць «падмануць» праграмы, выкарыстоўваючы памяць на цьвёрдым дыску і апэратыўную памяць быццам адзін бесьперапынны кавалак памяці, які называюць віртуальнай памяцьцю. Выкарыстаньне віртуальнай адрасацыі памяці (такой як *пагінацыя* або *сэгмэнтацыя*) азначае, што ядро можа вырашаць, якую памяць кожная праграма можа выкарыстоўваць у любы момант часу, і дазваляе апэрацыйнай сыстэме выкарыстоўваць адзін участак памяці для некалькіх задачаў.

У сучасных апэрацыйных сыстэмах, участак памяці, доступ да якога адбываецца радзей, можа быць часова запісаны на цьвёрды дыск ці іншы носьбіт, каб зрабіць гэту прастору даступнай для выкарыстаньня ў іншых праграмах. Гэта дзеяньне называюць *падменай* (па-ангельску: *swapping*), таму што пры выкарыстаньні нейкай вобласьці памяці некалькімі праграмамі, зьмест гэтай вобласьці можа быць заменены ці вернуты па патрабаваньні.

#### Шматзадачнасьць

Шматзадачнасьць азначае выкананьне некалькіх незалежных кампутарных праграмаў на адным кампутары, ствараючы ўражаньне, што кампутар выконвае задачы адначасова. Так як большасьць кампутараў можа рабіць ня больш адной ці двух рэчаў у дадзены момант часу, шматзадачнасьць звычайна дасягаюць з дапамогай падзелу часу, што азначае, што кожная праграма выкарыстоўвае частку часу кампутара для выкананьня.

Ядро апэрацыйнай сыстэмы зьмяшчае частку праграмнага коду, так званы *плянавальнік* (па-ангельску: *scheduler*), які вызначае, колькі часу кожная праграма будзе займаць рэсурсы, і ў якім парадку кіраваньне будзе перададзена праграмам. Ядро перадае кіраваньне працэсу, яно ж дазваляе праграме доступ да працэсара і памяці. Потым кіраваньне вяртаецца ядру празь нейкі мэханізм, каб яно магло перадаць кіраваньне наступнай праграме. Гэты пераход кантролю паміж ядром і праграмамі называюць *пераключэньнем кантэксту*.

Раньняя мадэль рэгуляваньня выдзяленьня часу для праграмаў — так званая каапэратыўная шматзадачнасьць. У гэтай мадэлі, калі ядро перадае кіраваньне праграме, яна можа выконвацца столькі часу, колькі пажадае, пакуль яўна не верне кіраваньне ядру. Гэта азначае, што шкоднасная праграмы або няспраўнасьць можа ня толькі забараніць іншым праграмам выкарыстаньне працэсара, але і павесіць ўсю сыстэму, калі ўвойдзе ў бясконцы цыкль.

Філязофія *выцясьняльнай шматзадачнасьці* заснавана на вылучэньні пэўнага адрэзка часу на цэнтральным працэсары для ўсіх праграмаў. Гэта азначае, што ўсе праграмы павінны быць абмежаваныя ў тым, колькі часу яны могуць займаць працэсар да таго, як адбудзецца перарываньне. Каб дасягнуць гэтага, ядры сучасных апэрацыйных сыстэмаў выкарыстоўваюць прымеркаваныя перарываньні. Ядро ўсталёўвае таймэр абароненага рэжыму, які выклікае вяртаньне ў прывілеяваны рэжым па заканчэньні вызначанага прамежку часу.

Сучасныя апэрацыйныя сыстэмы пашыраюць канцэпцыю выцясьняльнай шматзадачнасьці на драйверы прыладаў і код ядра, такім чынам апэрацыйная сыстэма мае папераджальны кантроль таксама і над ўнутраным кодам.

#### Доступ да дыска і файлавая сыстэма

Доступ да дадзеных, якія захоўваюцца на дысках, зьяўляецца цэнтральным элемэнтам ўсіх апэрацыйных сыстэмаў. Кампутары захоўваюць даныя на дысках з выкарыстаньнем файлаў, якія маюць спэцыфічную структуру ў мэтах забесьпячэньня хуткага доступу, павышэньня надзейнасьці, а таксама эфэктыўнага выкарыстаньня даступнай дыскавай прасторы. Файлавая сыстэма — гэта спэцыфічны спосаб захоўваньня файлаў на дыску, яна дазваляе задаваць для файлаў назвы і атрыбуты (напр., правы доступу, памер, даты стварэньня і зьмяненьня, і г. д.). Яна таксама дазваляе захоўваць файлы ў герархіі каталёгаў (тэчак).

#### Драйвэры прыладаў

Драйвер прылады (па-ангельску: *device driver*) — спэцыфічны тып кампутарнага праграмнага забесьпячэньня, распрацаваны для ўзаемадзеяньня з прыладамі. Як правіла, ўяўляе сабой інтэрфэйс для сувязі з прыладай, праз канкрэтныя шыны кампутара ці падсыстэмы сувязі з апаратнай часткай даючы каманды прыладзе, а на другім канцы прадстаўляючы неабходныя інтэрфэйсы для апэрацыйнай сыстэмы і прыкладаньняў. Гэта спэцыялізаваны праграмны код, які залежыць ад абсталяваньня, а таксама спэцыфічны для апэрацыйнай сыстэмы, дазваляе іншай праграме, звычайна апэрацыйнай сыстэме альбо пакету прыкладнога праграмнага забесьпячэньня, празрыста ўзаемадзейнічаць з прыладай, і як правіла, прадстаўляе неабходную апрацоўку перарываньняў.

### Сетка

У цяперашні час большасьць апэрацыйных сыстэмаў падтрымлівае шэраг сеткавых пратаколаў, апаратных сродкаў і прыкладаньняў для іх выкарыстаньня. Гэта азначае, што кампутары пад кіраваньнем разнастайных апэрацыйных сыстэмаў могуць далучацца да агульнай сеткі для сумеснага выкарыстаньня вылічальных рэсурсаў, файлаў, прынтараў і сканэраў з выкарыстаньнем праваднога альбо бесправаднога злучэньня. Істотна тое, што сетка можа дазваляць апэрацыйнай сыстэме кампутара атрымліваць доступ да рэсурсаў на іншым кампутары з прадстаўленьнем тых жа функцый, якія можна атрымаць пры падлучэньні гэтых рэсурсаў непасрэдна да лякальнага кампутара. Гэта ўключае ў сябе ўсё ад простых зносінаў да выкарыстаньня сеткавых файлавых сыстэмаў ці нават графікі ці гукавога абсталяваньня іншага кампутара.

## Функцыі

### Выкананьне праграмаў

Апэрацыйная сыстэма зьяўляецца інтэрфэйсам паміж карыстальнікам і апаратным забесьпячэньнем. Такім чынам, карыстальнік узаемадзейнічае з апаратным забесьпячэньнем, абстрагаваўшыся ад асаблівасьцяў кіраваньня апаратнымі прыстасаваньнямі. Выкананьне праграмаў — адзін з варыянтаў гэтага ўзаемадзейнічаньня. Падчас выкананьня, ядро сыстэмы выконвае код праграмы, перад гэтым выдзеліўшы ёй у карыстаньне неабходны аб’ём апэратыўнае памяці і іншых рэсурсаў ды разьмеркаваўшы прыярытэт выкананьня (у многазадачных сыстэмах). Праграма падчас сваёй працы карыстаецца дасяжнымі ёй інтэрфэйсамі для ўзаемадзейнічаньня з карыстальнікам і сыстэмай.