Принципы построения ОС
СОДЕРЖАНИЕ
1. ᅟВведение
3. ᅟПодсистемы ᅟпомощи ᅟв ᅟLinux
4. ᅟЗаключение
Введение
В ᅟнастоящее ᅟвремя ᅟуже ᅟникто ᅟне ᅟразрабатывает ᅟОС, ᅟкроме ᅟспециализирующихся ᅟна ᅟэтом ᅟфирм, ᅟа ᅟвсе ᅟявляются ᅟтолько ᅟпользователями. ᅟОднако ᅟобщие ᅟпринципы ᅟи ᅟтребования ᅟк ᅟпостроению ᅟоперационных ᅟсистем ᅟспециалистам-информатикам ᅟнеобходимо ᅟпредставлять ᅟдостаточно ᅟхорошо.
Принципы ᅟпостроения ᅟОС: ᅟпринцип ᅟнезависимости ᅟпрограмм ᅟот ᅟвнешних ᅟустройств ᅟи ᅟпринцип ᅟсовместимости
Принцип ᅟмодульности ᅟ- ᅟосновной ᅟпринцип ᅟпостроения ᅟОС ᅟсостоит ᅟв ᅟвыделении ᅟотдельных ᅟфункций ᅟи ᅟоформление ᅟих ᅟв ᅟвиде ᅟотдельных ᅟблоков ᅟ- ᅟ"модульный ᅟпринцип ᅟпостроения". ᅟМодуль ᅟ- ᅟпрограммный ᅟблок, ᅟкоторый ᅟреализует ᅟопределенную ᅟфункцию ᅟи ᅟвыполнен ᅟв ᅟсоответствии ᅟс ᅟпринятыми ᅟмежмодульными ᅟинтерфейсами. ᅟПривилегированные, ᅟповторно ᅟвходимые ᅟи ᅟреентерабельные ᅟмодули.
Принцип ᅟфункциональной ᅟизбирательности ᅟ- ᅟвыделенная ᅟчасть ᅟважных ᅟфункций, ᅟреализуемых ᅟрезидентным ᅟядром ᅟОС ᅟ(управление ᅟпроцессами, ᅟпамятью, ᅟустройствами ᅟвв ᅟи ᅟзащита ᅟданных). ᅟДругие ᅟв ᅟвиде ᅟтранзитных ᅟдля ᅟОП ᅟпрограммных ᅟмодулей ᅟ- ᅟвызываемых ᅟпо ᅟнеобходимости.
Принцип ᅟфункциональной ᅟизбыточности ᅟ- ᅟпроведение ᅟработы ᅟразличными ᅟсредствами ᅟимеющимися ᅟв ᅟсистеме.
Принцип ᅟгенерируемости ᅟОС ᅟ- ᅟвозможность ᅟизменения ᅟконфигурации ᅟсистемы, ᅟв ᅟзависимости ᅟот ᅟфункций ᅟВС ᅟи ᅟназначения ᅟОС.
Принцип ᅟвиртуализация ᅟ- ᅟпостроение ᅟвиртуальных ᅟресурсов ᅟразличных ᅟуровней, ᅟот ᅟвиртуальной ᅟмашины ᅟдо ᅟвиртуальных ᅟустройств ᅟс ᅟновыми ᅟили ᅟулучшенными ᅟхарактеристиками.
Принцип ᅟнезависимости ᅟпрограмм ᅟот ᅟвнешних ᅟустройств ᅟ- ᅟсвязь ᅟпрограмм ᅟс ᅟустройствами ᅟв ᅟпроизводится ᅟне ᅟна ᅟуровне ᅟтрансляции, ᅟа ᅟв ᅟпериод ᅟее ᅟисполнения. ᅟПри ᅟэтом ᅟперетрансляция ᅟпрограммы ᅟдля ᅟработа ᅟс ᅟдругим ᅟили ᅟновым ᅟустройством ᅟне ᅟтребуется.
Принцип ᅟсовместимости ᅟ- ᅟспособность ᅟвыполнять ᅟпрограммы ᅟнаписанные ᅟдля ᅟдругих ᅟОС ᅟи ᅟверсий ᅟОС. ᅟДвоичная ᅟсовместимость ᅟи ᅟсовместимость ᅟна ᅟуровне ᅟисходных ᅟкодов. ᅟПрограммы ᅟдля ᅟпроцессоров ᅟразных ᅟархитектур.
Принцип ᅟоткрытости ᅟи ᅟнаращиваемости ᅟОС ᅟ- ᅟиспользует ᅟне ᅟтолько ᅟнастройки ᅟи ᅟконфигурации ᅟно ᅟи ᅟдоступна ᅟдля ᅟанализа ᅟспециалистами ᅟна ᅟвсех ᅟуровнях ᅟи ᅟввода ᅟв ᅟсостав ᅟновых ᅟмодулей ᅟ(функций).
Принцип ᅟмобильности ᅟ(переносимость) ᅟОС ᅟ- ᅟлегкость ᅟпереноса ᅟна ᅟновые ᅟаппаратные ᅟплатформы ᅟ(исходные ᅟтексты ᅟна ᅟязыке ᅟвысокого ᅟуровня, ᅟограниченная ᅟзависимость ᅟядра ᅟот ᅟоборудования ᅟи ᅟдр.)
Принцип ᅟобеспечение ᅟбезопасных ᅟвычислений: ᅟзащита ᅟресурсов ᅟодного ᅟпользователя ᅟот ᅟдругих; ᅟустановление ᅟквот ᅟпо ᅟресурсам ᅟдля ᅟпредотвращения ᅟзахвата ᅟвсех; ᅟзащита ᅟинформации ᅟот ᅟнесанкционированного ᅟдоступа.
Принцип ᅟнезависимости ᅟпрограмм ᅟот ᅟвнешних ᅟустройств ᅟв ᅟнастоящее ᅟвремя ᅟреализуется ᅟв ᅟподавляющем ᅟбольшинстве ᅟсовременных ᅟОС ᅟобщего ᅟназначения. ᅟПринцип ᅟнезависимости ᅟзаключается ᅟв ᅟтом, ᅟчто ᅟсвязь ᅟпрограмм ᅟс ᅟконкретными ᅟустройствами ᅟпроизводится ᅟне ᅟна ᅟуровне ᅟтрансляции ᅟпрограмм, ᅟа ᅟв ᅟпериод ᅟпланирования ᅟих ᅟисполнения. ᅟПри ᅟработе ᅟс ᅟновым ᅟустройством ᅟдля ᅟхранения ᅟданных ᅟперекомпиляция ᅟне ᅟтребуется.
Принцип ᅟнезависимости ᅟпозволяет ᅟодинаково ᅟосуществлять ᅟоперации ᅟуправления ᅟвнешними ᅟустройствами ᅟнезависимо ᅟот ᅟконкретных ᅟфизических ᅟхарактеристик. ᅟСмена ᅟносителя ᅟи ᅟданных, ᅟразмещенных ᅟна ᅟнем, ᅟне ᅟпринесет ᅟкаких-либо ᅟизменений ᅟв ᅟпрограмму, ᅟесли ᅟв ᅟсистеме ᅟреализован ᅟпринцип ᅟнезависимости.
Принцип ᅟсовместимости. ᅟОдним ᅟиз ᅟаспектов ᅟсовместимости ᅟявляется ᅟспособность ᅟОС ᅟвыполнять ᅟпрограммы, ᅟнаписанные:
· ᅟдля ᅟдругих ᅟОС;
· ᅟдля ᅟболее ᅟранних ᅟверсий ᅟданной ᅟоперационной ᅟсистемы;
· ᅟдля ᅟдругой ᅟаппаратной ᅟплатформы.
Совместимость ᅟподразделяется ᅟна ᅟдва ᅟаспекта: ᅟдвоичная ᅟсовместимость; ᅟсовместимость ᅟна ᅟуровне ᅟисходных ᅟтекстов ᅟприложений.
При ᅟдвоичной ᅟсовместимости ᅟможно ᅟвзять ᅟисполняемую ᅟпрограмму ᅟи ᅟвыполнить ᅟее ᅟв ᅟсреде ᅟдругой ᅟОС. ᅟДля ᅟэтого ᅟнеобходимо:
· ᅟсовместимость ᅟна ᅟуровне ᅟкоманд ᅟпроцессора;
· ᅟсовместимость ᅟна ᅟуровне ᅟсистемных ᅟвызовов;
· ᅟсовместимость ᅟна ᅟуровне ᅟбиблиотечных ᅟвызовов, ᅟесли ᅟони ᅟявляются ᅟдинамически ᅟсвязываемыми.
Совместимость ᅟна ᅟуровне ᅟисходных ᅟтекстов ᅟтребует: ᅟналичия ᅟсоответствующего ᅟтранслятора ᅟв ᅟсоставе ᅟсистемного ᅟпрограммного ᅟобеспечения; ᅟсовместимости ᅟна ᅟуровне ᅟбиблиотек ᅟи ᅟсистемных ᅟвызовов. ᅟНеобходимо ᅟперекомпилировать ᅟимеющиеся ᅟисходные ᅟтексты ᅟв ᅟновый ᅟвыполняемый ᅟмодуль. ᅟ
Одним ᅟиз ᅟсредств ᅟобеспечения ᅟсовместимости ᅟпрограммных ᅟи ᅟпользовательских ᅟинтерфейсов ᅟявляется ᅟсоответствие ᅟстандартам ᅟPOSIX. ᅟИспользование ᅟстандарта ᅟPOSIX ᅟпозволяет ᅟсоздавать ᅟпрограммы ᅟв ᅟстиле ᅟUNIX, ᅟкоторые ᅟмогут ᅟлегко ᅟпереноситься ᅟиз ᅟодной ᅟОС ᅟв ᅟдругую.
Подсистемы ᅟпомощи ᅟв ᅟLinux
Больше ᅟвсего ᅟразличной ᅟполезной ᅟинформации ᅟсодержится ᅟв ᅟстраницах ᅟруководства ᅟ(manpages). ᅟКаждая ᅟстраница ᅟруководства ᅟпосвящена ᅟкакому-нибудь ᅟодному ᅟобъекту ᅟсистемы. ᅟДля ᅟтого, ᅟчтобы ᅟпосмотреть ᅟстраницу ᅟруководства, ᅟнужно ᅟдать ᅟкоманду ᅟсистеме ᅟman ᅟобъект. ᅟПолный ᅟсписок ᅟтого, ᅟчто ᅟможно ᅟделать ᅟс ᅟтекстом ᅟв ᅟless, ᅟвыводится ᅟпо ᅟкоманде ᅟ«H» ᅟ(Help).
Страница ᅟруководства ᅟсостоит ᅟиз ᅟполей ᅟ— ᅟстандартных ᅟразделов, ᅟс ᅟразных ᅟсторон ᅟописывающих ᅟзаинтересовавший ᅟМефодия ᅟобъект ᅟ— ᅟкоманду ᅟcal. ᅟВ ᅟполе ᅟNAME ᅟсодержится ᅟкраткое ᅟописание ᅟобъекта ᅟ(такое, ᅟчтобы ᅟего ᅟназначение ᅟбыло ᅟпонятно ᅟс ᅟпервого ᅟвзгляда). ᅟВ ᅟполе ᅟSYNOPSIS ᅟдаётся ᅟформализованное ᅟописание ᅟспособов ᅟиспользования ᅟобъекта ᅟ(с ᅟданном ᅟслучае ᅟ— ᅟтого, ᅟкак ᅟи ᅟс ᅟкакими ᅟпараметрами ᅟзапускать ᅟкоманду ᅟcal). ᅟКак ᅟправило, ᅟв ᅟквадратные ᅟскобки ᅟв ᅟэтом ᅟполе ᅟзаключены ᅟнеобязательные ᅟпараметры ᅟкоманды, ᅟкоторые ᅟможно ᅟей ᅟпередать, ᅟа ᅟможно ᅟи ᅟопустить. ᅟНапример, ᅟстрока ᅟ«[[month] ᅟyear]» ᅟозначает, ᅟчто ᅟв ᅟэто ᅟместе ᅟкомандной ᅟстроки ᅟпараметров ᅟу ᅟкоманды ᅟможет ᅟне ᅟбыть ᅟвообще, ᅟможет ᅟбыть ᅟуказан ᅟгод ᅟили ᅟпара ᅟ— ᅟмесяц ᅟи ᅟгод. ᅟНаконец, ᅟтекст ᅟв ᅟполе ᅟDESCRIPTION ᅟ— ᅟэто ᅟразвёрнутое ᅟописание ᅟобъекта, ᅟдостаточное ᅟдля ᅟтого, ᅟчтобы ᅟим ᅟвоспользоваться. ᅟ
Одно ᅟиз ᅟсамых ᅟважных ᅟполей ᅟруководства ᅟнаходится ᅟв ᅟконце ᅟтекста. ᅟЕсли ᅟв ᅟпроцессе ᅟчтения ᅟNAME ᅟили ᅟDESCRIPTION ᅟпользователь ᅟпонимает, ᅟчто ᅟне ᅟнашёл ᅟв ᅟруководстве ᅟтого, ᅟчто ᅟискал, ᅟон ᅟможет ᅟзахотеть ᅟпосмотреть, ᅟа ᅟесть ᅟли ᅟдругие ᅟруководства ᅟили ᅟиные ᅟисточники ᅟинформации ᅟпо ᅟтой ᅟже ᅟтеме. ᅟСписок ᅟтаких ᅟисточников ᅟсодержится ᅟв ᅟполе ᅟSEE ᅟALSO.
Команда ᅟwhatis, ᅟкак ᅟи ᅟкоманда ᅟapropos, ᅟwhatis ᅟищет ᅟподстроку ᅟв ᅟнекоторой ᅟбазе ᅟданных, ᅟсостоящей ᅟиз ᅟполей ᅟNAME ᅟвсех ᅟстраниц ᅟпомощи ᅟв ᅟсистеме. ᅟРазличие ᅟмежду ᅟними ᅟ— ᅟв ᅟтом, ᅟчто ᅟwhatis ᅟищет ᅟтолько ᅟсреди ᅟимён ᅟобъектов ᅟ(в ᅟлевых ᅟчастях ᅟполей ᅟNAME), ᅟа ᅟapropos ᅟ— ᅟпо ᅟвсей ᅟбазе. ᅟВ ᅟрезультате ᅟу ᅟwhatis ᅟполучается ᅟсписок ᅟкратких ᅟописаний ᅟобъектов ᅟс ᅟименами, ᅟвключающими ᅟв ᅟсебя ᅟискомое ᅟслово, ᅟа ᅟу ᅟapropos ᅟ— ᅟсписок, ᅟв ᅟкотором ᅟэто ᅟслово ᅟупоминается. ᅟВ ᅟсистеме ᅟможет ᅟвстретиться ᅟнесколько ᅟобъектов ᅟразного ᅟтипа, ᅟно ᅟс ᅟодинаковым ᅟназванием. ᅟЧасто ᅟсовпадают, ᅟнапример, ᅟимена ᅟсистемных ᅟвызовов ᅟ(функций ᅟядра) ᅟи ᅟпрограмм, ᅟкоторые ᅟпозволяют ᅟпользоваться ᅟэтими ᅟфункциями ᅟиз ᅟкомандной ᅟстроки ᅟ(т. ᅟн. ᅟутилит).
Описания ᅟобъектов, ᅟвыводимые ᅟwhatis, ᅟотличаются ᅟчислом ᅟв ᅟскобках ᅟ— ᅟномером ᅟраздела. ᅟВ ᅟсистеме ᅟруководств ᅟLinux ᅟдевять ᅟразделов, ᅟкаждый ᅟиз ᅟкоторых ᅟсодержит ᅟстраницы ᅟруководства ᅟк ᅟобъектам ᅟопределённого ᅟтипа. ᅟВсе ᅟразделы ᅟсодержат ᅟпо ᅟодному ᅟруководству ᅟс ᅟименем ᅟ«intro», ᅟв ᅟкотором ᅟв ᅟобщем ᅟвиде ᅟи ᅟна ᅟпримерах ᅟрассказано, ᅟчто ᅟза ᅟобъекты ᅟимеют ᅟотношение ᅟк ᅟданному ᅟразделу. ᅟНиже ᅟрпедставлены ᅟназвания ᅟразделов ᅟв ᅟпереводе ᅟна ᅟрусский:
- Команды ᅟпользователя.
- Системные ᅟвызовы ᅟ(пользовательские ᅟфункции ᅟядра ᅟLinux; ᅟруководства ᅟрассчитаны ᅟна ᅟпрограммиста, ᅟзнающего ᅟязык ᅟСи).
- Библиотечные ᅟфункции ᅟ(функции, ᅟпринадлежащие ᅟвсевозможным ᅟбиблиотекам ᅟподпрограмм; ᅟруководства ᅟрассчитаны ᅟна ᅟпрограммиста, ᅟзнающего ᅟязык ᅟСи).
- Внешние ᅟустройства ᅟи ᅟработа ᅟс ᅟними ᅟ(в ᅟLinux ᅟони ᅟназываются ᅟспециальными ᅟфайлами, ᅟсм. ᅟлекцию ᅟРабота ᅟс ᅟвнешними ᅟустройствами).
- Форматы ᅟразличных ᅟстандартных ᅟфайлов ᅟсистемы ᅟ(например ᅟконфигурационных).
- Игры, ᅟбезделушки ᅟи ᅟпрочие ᅟвещи, ᅟне ᅟимеющие ᅟсистемной ᅟценности.
- Теоретические ᅟположения, ᅟдоговорённости ᅟи ᅟвсё, ᅟчто ᅟне ᅟможет ᅟбыть ᅟклассифицировано.
- Инструменты ᅟадминистратора ᅟ(часто ᅟнедоступные ᅟобычному ᅟпользователю).
- Интерфейс ᅟядра ᅟ(внутренние ᅟфункции ᅟи ᅟструктуры ᅟданных ᅟядра ᅟLinux, ᅟнеобходимы ᅟтолько ᅟсистемному ᅟпрограммисту, ᅟисправляющему ᅟили ᅟдополняющему ᅟядро).
По ᅟумолчанию ᅟman ᅟпросматривает ᅟвсе ᅟразделы ᅟи ᅟпоказывает ᅟпервое ᅟнайденное ᅟруководство ᅟс ᅟзаданным ᅟименем. ᅟЧтобы ᅟпосмотреть ᅟруководство ᅟпо ᅟобъекту ᅟиз ᅟопределённого ᅟраздела, ᅟнеобходимо ᅟв ᅟкачестве ᅟпервого ᅟпараметра ᅟкоманды ᅟman ᅟуказать ᅟномер ᅟраздела.
Если ᅟв ᅟкачестве ᅟпервого ᅟпараметра ᅟman ᅟиспользовать ᅟ«-a», ᅟбудут ᅟпоследовательно ᅟвыданы ᅟвсе ᅟруководства ᅟс ᅟзаданным ᅟименем. ᅟВнутри ᅟстраниц ᅟруководства ᅟпринято ᅟнепосредственно ᅟпосле ᅟимени ᅟобъекта ᅟставить ᅟв ᅟкруглых ᅟскобках ᅟномер ᅟраздела, ᅟв ᅟкотором ᅟсодержится ᅟруководство ᅟпо ᅟэтому ᅟобъекту: ᅟman(1), ᅟless(1), ᅟpasswd(5) ᅟи ᅟт. ᅟд. ᅟДругой ᅟисточник ᅟинформации ᅟо ᅟLinux ᅟи ᅟсоставляющих ᅟего ᅟпрограммах ᅟ— ᅟсправочная ᅟподсистема ᅟinfo. ᅟСтраница ᅟруководства, ᅟнесмотря ᅟна ᅟобилие ᅟссылок ᅟразличного ᅟтипа, ᅟостаётся ᅟ«линейным» ᅟтекстом, ᅟструктурированным ᅟтолько ᅟлогически. ᅟДокумент ᅟinfo ᅟструктурирован ᅟпрежде ᅟвсего ᅟтопологически ᅟ— ᅟэто ᅟнастоящий ᅟгипертекст, ᅟв ᅟкотором ᅟмножество ᅟнебольших ᅟстраниц ᅟобъединены ᅟв ᅟдерево. ᅟВ ᅟкаждом ᅟразделе ᅟдокумента ᅟinfo ᅟвсегда ᅟесть ᅟоглавление, ᅟиз ᅟкоторого ᅟможно ᅟперейти ᅟсразу ᅟк ᅟнужному ᅟподразделу, ᅟоткуда ᅟвсегда ᅟможно ᅟвернуться ᅟобратно. ᅟКроме ᅟтого, ᅟinfo-документ ᅟможно ᅟчитать ᅟи ᅟкак ᅟнепрерывный ᅟтекст, ᅟпоэтому ᅟв ᅟкаждом ᅟподразделе ᅟесть ᅟссылки ᅟна ᅟпредыдущий ᅟи ᅟпоследующий ᅟподразделы. ᅟ
Программа ᅟinfo ᅟиспользует ᅟвесь ᅟэкран: ᅟна ᅟбольшей ᅟего ᅟчасти ᅟона ᅟпоказывает ᅟтекст ᅟдокумента, ᅟа ᅟпервая ᅟи ᅟдве ᅟпоследних ᅟстроки ᅟотведены ᅟдля ᅟориентации ᅟв ᅟего ᅟструктуре. ᅟОдна ᅟили ᅟнесколько ᅟстраниц, ᅟкоторые ᅟможно ᅟперелистывать ᅟклавишей ᅟПробел ᅟили ᅟPage ᅟUp/Page ᅟDown ᅟ— ᅟэто ᅟузел ᅟ(node). ᅟУзел ᅟсодержит ᅟобычный ᅟтекст ᅟи ᅟменю ᅟ(menu) ᅟ— ᅟсписок ᅟссылок ᅟна ᅟдругие ᅟузлы, ᅟлежащие ᅟв ᅟдереве ᅟна ᅟболее ᅟнизком ᅟуровне. ᅟСсылки ᅟвнутри ᅟдокумента ᅟимеют ᅟвид ᅟ«* ᅟимя_узла::» ᅟи ᅟперемещать ᅟпо ᅟним ᅟкурсор ᅟможно ᅟклавишей ᅟTab, ᅟа ᅟпереходить ᅟк ᅟпросмотру ᅟвыбранного ᅟузла ᅟ— ᅟклавишей ᅟEnter. ᅟВернуться ᅟк ᅟпредыдущему ᅟпросмотренному ᅟузлу ᅟможно ᅟклавишей ᅟ«l» ᅟ(oт ᅟ«Last»). ᅟИ, ᅟглавное, ᅟвыйти ᅟиз ᅟпрограммы ᅟinfo ᅟможно, ᅟнажав ᅟ«q» ᅟ(Quit). ᅟБолее ᅟподробную ᅟсправку ᅟоб ᅟуправлении ᅟпрограммой ᅟinfo ᅟможно ᅟв ᅟлюбой ᅟмомент ᅟполучить ᅟу ᅟсамой ᅟinfo, ᅟнажав ᅟ«?».
Узлы, ᅟсоставляющие ᅟдокумент ᅟinfo, ᅟможно ᅟпросматривать ᅟи ᅟподряд, ᅟодин ᅟза ᅟдругим ᅟ(с ᅟпомощью ᅟкоманд ᅟ«n», ᅟNext, ᅟи ᅟ«p», ᅟPrevious), ᅟоднако ᅟэто ᅟбывает ᅟнужно ᅟнечасто. ᅟВ ᅟверхней ᅟстроке ᅟэкрана ᅟinfo ᅟпоказывает ᅟимя ᅟтекущего ᅟузла, ᅟимя ᅟследующего ᅟузла ᅟи ᅟимя ᅟродительского ᅟ(или ᅟверхнего) ᅟузла, ᅟв ᅟкотором ᅟнаходится ᅟссылка ᅟна ᅟтекущий. ᅟИимя ᅟузла ᅟTop ᅟи ᅟимя ᅟверхнего ᅟузла ᅟ(dir) ᅟозначают, ᅟчто ᅟпросматривается ᅟкорневой ᅟузел ᅟдокумента, ᅟвыше ᅟкоторого ᅟ— ᅟтолько ᅟкаталог ᅟсо ᅟсписком ᅟвсех ᅟinfo-деревьев. ᅟВ ᅟнижней ᅟчасти ᅟэкрана ᅟрасположена ᅟстрока ᅟс ᅟинформацией ᅟо ᅟтекущем ᅟузле, ᅟа ᅟза ᅟней ᅟ— ᅟстрока ᅟдля ᅟввода ᅟдлинных ᅟкоманд ᅟ(например, ᅟдля ᅟпоиска ᅟтекста ᅟс ᅟпомощью ᅟкоманды ᅟ«/»). ᅟ
Команде ᅟinfo ᅟможно ᅟуказывать ᅟв ᅟпараметрах ᅟвсю ᅟцепочку ᅟузлов, ᅟприводящую ᅟк ᅟтому ᅟили ᅟиному ᅟразделу ᅟдокументации. ᅟСистема ᅟinfo ᅟможет ᅟсодержать ᅟбольше, ᅟчем ᅟman, ᅟпоэтому ᅟв ᅟнеё ᅟчасто ᅟвключают ᅟи ᅟучебники ᅟ(принято ᅟназывать ᅟучебник ᅟтермином ᅟ«tutorial»), ᅟи ᅟт. ᅟн. ᅟ«howto» ᅟ(примеры ᅟпостановки ᅟи ᅟрешения ᅟтиповых ᅟзадач), ᅟи ᅟдаже ᅟстатьи ᅟпо ᅟтеме. ᅟТаким ᅟобразом ᅟinfo-документ ᅟможет ᅟстать, ᅟв ᅟотличие ᅟот ᅟстраницы ᅟруководства, ᅟполным ᅟсводом ᅟсведений. ᅟРазработка ᅟтакого ᅟдокумента ᅟ— ᅟдело ᅟтрудоёмкое, ᅟпоэтому ᅟдалеко ᅟне ᅟвсе ᅟобъекты ᅟсистемы ᅟим ᅟсопровождаются. ᅟКроме ᅟтого, ᅟи ᅟпрочесть ᅟбольшой ᅟinfo-документ ᅟцеликом ᅟзачастую ᅟневозможно. ᅟПоэтому ᅟимеет ᅟсмысл ᅟначинать ᅟименно ᅟи ᅟруководства, ᅟа ᅟесли ᅟего ᅟнедостаточно ᅟ— ᅟизучать ᅟinfo.
Заключение
Каждая ᅟОС ᅟявляется ᅟсложной ᅟи ᅟуникальной ᅟпрограммной ᅟсистемой. ᅟОднако ᅟв ᅟих ᅟоснову ᅟположены ᅟобщие ᅟпринципы:
- принцип ᅟмодульности.
- принцип ᅟфункциональной ᅟизбирательности
- принцип ᅟгенерируемости
- принцип ᅟнезависимости ᅟпрограмм ᅟот ᅟвнешних ᅟустройств
- принцип ᅟсовместимости.
- принцип ᅟрасширяемости ᅟ(открытой ᅟи ᅟнаращиваемой ᅟос)
- принцип ᅟпереносимости ᅟ(мобильности)
- принцип ᅟнадежности ᅟи ᅟотказоустойчивости
- принцип ᅟмаксимальной ᅟпроизводительности
- принцип ᅟобеспечения ᅟбезопасности ᅟвычислений.
Все ᅟутилиты ᅟLinux, ᅟвсе ᅟфункции ᅟядра ᅟи ᅟбиблиотек, ᅟструктура ᅟбольшинства ᅟконфигурационных ᅟфайлов ᅟи ᅟт. ᅟд. ᅟописаны ᅟлибо ᅟв ᅟруководствах, ᅟлибо ᅟв ᅟinfo-страницах, ᅟлибо ᅟв ᅟнесистематизированной ᅟсопроводительной ᅟдокументации.
Список ᅟлитературы
- Прошлякова ᅟН. ᅟВ. ᅟПерспективы ᅟразвития ᅟсетевых ᅟоперационных ᅟсистем ᅟ// ᅟРоль ᅟбизнеса ᅟв ᅟтрансформации ᅟобщества ᅟ– ᅟ2014. ᅟ– ᅟМосква, ᅟ2014. ᅟС. ᅟ256-257
- Семенов ᅟА. ᅟПроектирование ᅟсетевых ᅟоперационных ᅟсистем. ᅟПрактический ᅟкурс. ᅟ- ᅟВузовская ᅟкнига, ᅟ2018. ᅟ224 ᅟс.
- Яковлев ᅟВ. ᅟВ., ᅟПервов ᅟС. ᅟГ. ᅟЭлектронный ᅟучебно-методический ᅟкомплекс ᅟпо ᅟдисциплине ᅟ"сетевые ᅟОС" ᅟв ᅟсреде ᅟдистанционного ᅟобразования ᅟmoodle ᅟ// ᅟИнформатика ᅟи ᅟвычислительная ᅟтехника. ᅟ– ᅟЧебоксары. ᅟ2017. ᅟС. ᅟ215-218