Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Диспетчеризация оперативной памяти

Содержание:

Введение

Если Вы включите исправный компьютер, то сразу увидите, как появятся какие-то изображения на экране, как начнет работать мышь и клавиатура, а Ваше устройство будет на манипуляции с мышью и нажатия клавиш определенным образом реагировать. Большая часть пользователей не задумывается о том, что все их действия с внешними устройствами, как и многое другое, обеспечены не только металлом, пластиком и другими составляющими компьютера (или смартфона, планшета и т.п.), которые можно потрогать, в ряде случаев извлечь и рассмотреть, но и программами, управляющими как внешними устройствами, так и вообще всей деятельностью компьютера. Без программного обеспечения (ПО) компьютер – это просто «кусок железа», как говорят программисты и системные администраторы.

Основой, базой ПО являются операционные системы (ОС). Пользователи взаимодействуют с компьютером, прежде всего, через операционные системы, используя их функции, возможности. Причем большая часть пользователей использует весьма и весьма ограниченную часть всего потенциала, предоставляемого операционной системой. Знание, что же представляет собой ОС, для чего эта программа (точнее – комплекс программ) написана, какие функции реализует – полезно, а для тех, кто считает важным овладеть информационной культурой и необходимым. Сказанное определяет актуальность проблемы, освещаемой в настоящей работе.

Целью работы является определение функций, выполняемых операционной системой и разъяснение содержания и назначения этих функций.

Для достижения сформулированной цели необходимо рассмотреть следующие вопросы:

  1. Дать определение операционной системы и пояснить его;
  2. Показать, какие основные компоненты содержит ОС и каково их назначение;
  3. Назвать основные принципы работы операционных систем;
  4. Разобрать основные функции ОС и задачи, решаемые этими функциями.

Назовем следующие примеры наиболее известных операционных систем:

Microsoft Windows (начиная с версии – 95), Linux, Apple MacOS, Google Chrome OS и др. Основные ОС, предназначенные для смартфонов - iOS от Apple и Android от Google.

Объектом исследования являются операционные системы, точнее – общие свойства и функции всех операционных систем компьютера.

Предмет исследования – функции, выполняемые операционными системами.

Информация об операционных системах содержится в монографиях, посвященных как самим ОС, так и их разработке, в периодической компьютерной литературе и, конечно, на многочисленных сайтах сети Интернет. Однако эта информация носит либо чрезвычайно краткий упрощенный и недостаточно содержательный характер, либо наоборот, ориентирована на разработчиков ОС, т.е. на программистов высокой квалификации. Кроме того, большая часть литературы, представленной в форме монографий, написана весьма давно. Однако следует заметить, что основные функции ОС и задачи, решаемые операционными системами, не изменились, хотя несколько расширились. Современные операционные системы отличаются от своих предшественниц в основном уровнем безопасности, пользовательским интерфейсом и предоставляемыми пользователю программными продуктами.

Среди рассмотренной автором работы литературы наиболее ценную информацию содержали электронные лекции НОУ Интуит. Вообще информация, представленная на сайтах Интернет представляется более современной и доступной, чем на бумажных носителях. Эта информация и явилась основным источником материалов при написании настоящей работы. Причина в том, что новые версии операционных систем существенно опережают их описание. Техническая документация по ОС, выпускаемая разработчиками, не всегда доступна и изложена для профессиональных программистов и системных администраторов. В ней говорится не о каких-то теоретических положениях, связанных с разработкой и эксплуатацией операционных систем, а конкретно о специфике данной ОС в сравнении с ее предшественницами.

Сам же сравнительный анализ операционных систем, а также какие-то общие положения, отвечающие современной ситуации, приведены именно на сайтах сети.

1. Краткий исторический экскурс

В 50 и первой половине 60-х годов (а в СССР до середины 70-х) прошлого века компьютеры были предназначены исключительно для вычислений. И назывались они Электронными Вычислительными Машинами (ЭВМ). Первые программисты писали свои программы в кодах ЭВМ, т.е. в двоичной (но для удобства использовали восьмеричную) системе счисления. В этой же системе вводились данные. Программа и данные заносились с перфолент или перфокарт, и краткие программы такого ввода вручную вводились с огромного пульта непосредственно в ламповую, а потом и полупроводниковую память громоздких и по сегодняшним меркам крайне непроизводительных устройств. Само программирование являлось медленным и непроизводительным процессом, а ввод – вывод и, тем более, отладка программ занимали много времени. Вывод осуществлялся только на бумажные носители. Ответственность за программирование ввода и вывода данных возлагалась на разработчика прикладной программы, т.е. раз за разом многим программистам приходилось писать один и тот же код.

Естественно, что одновременно выполнялась лишь одна задача, при этом во время медленных процессов ввода и вывода или сохранения информации на магнитных носителях (в тот период – магнитных лентах и барабанах) процессор простаивал, что было весьма непроизводительно.

С развитием, как технических средств, так и программирования как предметной области, стало ясно, что значительно рациональнее постоянно иметь в памяти программы, взаимодействующие с внешними устройствами, управляющими их работой. Имеет смысл также в период медленных процессов, связанных с механическими устройствами, загружать процессор решением других задач, то есть нужна была постоянно размещенная в оперативной памяти машины и имеющая наивысший приоритет программа распределения ресурсов. Такая программа уже является операционной системой.

Первые операционные системы появились задолго (лет за 15 – 20, что по меркам развития компьютеров – большой период) до появления первых персональных компьютеров (ПК). И предназначались они для того, чтобы работающие круглые сутки и стоящие огромные деньги вычислительные машины оптимально использовали свои вычислительные возможности.

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

К моменту появления первых ПК основные функции операционных систем уже были достаточно очевидны. Они должны были обеспечить работу с внешними устройствами, загрузку и запуск пользовательских программ (чтобы программист был избавлен от необходимости вводить какую-либо информацию с двоичного пульта непосредственно в память ЭВМ. Да и сам такой пульт уже уступил место клавиатуре), обеспечить начальный запуск компьютера при его включении, желательно – с проверкой работоспособности компьютера, т.е. правильности записи – считывания информации из оперативной памяти и выполнения простейших операций центральным процессором (иначе называемым тогда арифметико-логическим устройством АЛУ).

К моменту появления ПК (конец 70-х – начало 80-х годов), теоретические основы как разработки ПО, так и созданию ОС, как систем распределения машинных ресурсов (памяти, доступа к внешним устройства, взаимодействия с операторами ЭВМ, поскольку термин «пользователь» неразрывно связан с появлением ПК. До их появления были программисты, операторы, инженеры, обслуживающий вычислительный центр персонал, но пользователей не было). Теперь конечному пользователю важно было распределять свои информацию таким образом, чтобы ее было удобно находить. Эта информация могла быть текстовой, графической, расчетными таблицами и т.п. Список коммерчески привлекательных приложений стремительно рос. Возникшую потребность в размещении, группировке, поиске файлов решали с помощью командной системы. Команды понимались и выполнялись операционной системой. Так, команды:

  • Dir – вывод оглавления текущего каталога;
  • Cd – смена имени текущего каталога;
  • Md – создание подкаталога;
  • Copy – копирование файла или каталога;
  • Move – перенос файла или каталога и др.

Поддерживаются всеми версиями ОС Windows. Например. системные администраторы проверяют наличие сигналов к/от устройств и сайтов в сети командой ping[1].

Чтобы избавить конечного пользования от необходимости помнить синтаксис команд, Питером Нортоном был предложен удобный графический интерфейс. Значительный пользовательский комфорт оказался связан с появлением такого привычного всем устройства как мышь. Однако полноценное появление графических интерфейсов связано с разработкой графических мониторов, сначала монохромных, а затем и цветных.

Отметим, что несмотря на наличие удобного графического интерфейса для работы с файлами в ОС Windows, многие программисты и системные администраторы предпочитают приложение, аналогичное Norton Commander и носящее название Far.

Появление персональных ПК совпало по времени с появлением компьютерных вирусов, а затем и их эпидемией. Таки образом, перед разработчиками системного ПО встала дополнительная задача защиты самой операционной системы и всей информации на компьютере от вирусных атак. Хотя специальные антивирусные приложения и более эффективны, сегодня операционные системы также обладают средствами защиты от вирусов.

Появление сетей, т.е. включение отдельного компьютера в сеть потребовало включения в операционную систему новых функций, обеспечивающих не только возможности коммуникаций в сети, но также удобства и безопасность удобство при сетевой коммуникации. Развитие мобильных устройств, совмещающих функции телефона, фотоаппарата и компьютера поставила вопрос о создании для них операционных систем, в которых коммуникационная составляющая является доминантной на передний план разработок ОС.

Операционные системы для мобильных устройств должны, помимо всего прочего, оперативно устанавливать различные приложения, которые разрабатываются для таких устройств и взаимодействовать с такими приложениями. Например, с программами, определяющими текущее положение мобильного устройства по сигналам спутников (GPS), вычисляющим проделанный устройством путь и сохраняющим трек, устройствам связи не через телефон, а через Интернет-приложения, с «живыми журналами» и т.п.

Коммерческие функции, выполняемые сегодня как посредством компьютера, так и посредством мобильных устройств, предъявляют повышенные требования к защищенности ОС и содержимого памяти устройств от взломов и хакерских атак. Наконец, скорость выполнения программ современных ОС также может рассматриваться как важный критерий их функциональности и качества. Расширение функций ОС проиллюстрировано в таблице 1.

Таблица 1. Развитие функций операционных систем с развитием средств вычислительной и коммуникационной техники[2]

https://present5.com/presentation/218784078_446293008/image-2.jpg

Заметим, что временные рамки. Приведенные в этой таблице, весьма условны. Так. В СССР развитие вычислительной техники существенно отставало от ее развития в США и ряде стран Западной Европы. Однако сами принципы развития функций ОС с развитием технических средств корректны.

Таким образом, несмотря на то, что основные функции операционных систем были названы несколько десятилетий назад, а принципы разработки ОС известны, описаны и являются предметом, который преподается в вузах, совершенствование операционных систем есть необходимый процесс, осуществляемый одновременно с развитием технических средств.

2. Определение операционной системы и содержание ОС

Все программное обеспечение для компьютеров, в том числе персональных компьютеров (ПК) можно классифицировать на:

  • Системные программы
  • Инструментальные среды
  • Прикладные программы (Приложения)

Системные программы обеспечивают собственно работоспособность компьютера. К ним относятся операционные системы, программы – оболочки для работы с файлами (Norton Commander, Far…), драйверы, антивирусные программы, программы сжатия файлов (zip, rar…).

Инструментальные среды ориентированы на разработчиков программного обеспечения, т.е. на программистов. Это оболочки различных версий различных языков, как-то С, Pascal, Java, Python, Oracle, SQL и пр.

Прикладные программы ориентированы на конечного пользователя. Это различные средства коммуникации, текстовые и графические редакторы, электронные таблицы, обучающие программы, специальные программы для инженерных разработок и расчетов (AutoCAD и пр.) и т.п.

Заметим, что данное разделение на инструментальные среды и приложения весьма условное. Так, под всеми приложениями пакета Microsoft Office «спрятана» инструментальная среда Visual Basic for Application (VBA) а также возможность конвертации текста, презентации или электронной таблицы в сайт.

Системные программы являются важнейшей частью ПО. Именно они должны быть на компьютере любого пользователя, и, в первую очередь – операционная система. Без такой системы, как уже отмечалось компьютер работать не может.

Операционной системой называют комплекс программ, которые обеспечивают взаимодействие аппаратных и программных компонент компьютера друг с другом, а также коммуникацию между пользователем и компьютером[3].

ОС поддерживает комплексное функционирование всех составляющих (устройств), входящих в состав компьютера, а также дает возможность пользователю получить доступ к этим устройствам. Операционная система есть необходимая базовая программная система, без которой работа вычислительного устройства невозможна. Связь операционной системы и аппаратной составляющей («железа») проиллюстрирована на рисунке 1.

https://www.nastroy.net/pic/images/post/791404-1526842828.jpg

Рисунок 1. Связь оппаратной части и операционной системы[4]

Отдельно остановимся на определении сетевых операционных систем: «Под сетевой операционной системой в широком смысле понимается совокупность операционных систем отдельных компьютеров, взаимодействующих с целью обмена сообщениями и разделения ресурсов по единым правилам – протоколам»[5].

«Операционная система явилась ключевой вехой в истории развития компьютерной индустрии, поскольку именно она, среди прочего, выполняла роль связующего звена, своеобразного координатора (диспетчера), обеспечившего взаимодействие между устройствами и программами: принимала запросы от программного слоя (например, пользовательских программ) на обмен данными с тем или иным устройством и наоборот, то есть фактически выполняла роль сопряжения между аппаратной и программной частями.»[6]

Таким образом, операционную систему следует считать основой программного обеспечения (ПО) компьютера. Все остальные программы так или иначе взаимодействуют с операционной системой, управляются ею.

ОС предназначены для решения таких задач как:

  • обслуживания аппаратуры (внешних устройств, оперативной памяти), компьютера;
  • создания рабочей среды и обеспечение «дружественного пользовательского интерфейса»;
  • выполнения команд пользователя и программных инструкций, в первую очередь с использованием визуального интерфейса;
  • организации ввода/вывода, хранения информации и управления файлами и данными;
  • Поддержка пользователя наиболее часто используемыми программными приложениями, которые включаются в состав операционной системы.

Особо следует выделить организацию файловой структуры и диспетчеризацию оперативной памяти.

Заметим, что в большей части источников информации не указывается такая важная функция ОС, как обеспечение компьютерной безопасности путем встроенного контроля за появлением вирусов, а также возможности регламентации доступа к ресурсам компьютера. Однако при обсуждении сравнительных достоинств и недостатков разных ОС именно на безопасность авторы обращают особое внимание. Особенно важно это для серверных операционных систем, устанавливаемых системными администраторами. При соответствующей настройке эти ОС фиксируют деятельность сотрудников на рабочих станциях, что позволяет проверить, занимался каждый из них, используя рабочую станцию. Системный администратор имеет возможность ограничить для сотрудника обращение к определенным сайтам, вызов определенных файлов и, конечно, доступ к файлам и устройствам, а может, наоборот, предоставить дополнительные возможности, например, возможность печати на выбранных сетевых принтерах, или доступ к общим файлам и папкам. То есть сетевые операционные системы реализуют дополнительный спектр функций, обеспечивающий качественную и надежную работу сотрудников организации, удобство при их взаимодействии[7].

Следует также упомянуть, что современные ОС обеспечивают так называемый виртуальный режим работы компьютера, который, в свою очередь, дает возможность реализовать такую важнейшую функцию как многозадачность.

Имеет место и другой подход к задачам, решаемым операционными системами. Так, предлагается разделить эти задачи на две группы:

  1. Предоставление пользователю или программисту вместо реальной аппаратуры компьютера расширенной виртуальной (т.е. реально не существующей) машины, с которой удобнее работать и которую легче программировать. То есть, человек может решать свои разнообразные задачи, абстрагируясь от специфики устройства компьютера, сосредотачиваясь на привычном математическом или реальном человеческом языке, а функцию трансляции с общечеловеческих представлений на аппаратную структуру берет на себя ОС;
  2. Повышение эффективности использования компьютера путем рационального управления его ресурсами в соответствии с некоторым критерием

В настоящее время существует целый ряд операционных систем. выполняющих весь комплекс перечисленных функций. Между пользователями и разработчиками постоянно ведется дискуссия: какая из операционных систем лучше, какими сравнительными достоинствами и недостатками каждая из ОС обладает. При этом останавливаются в основном на анализе трех семейств операционных систем: Windows различных версий, ОС, разработанных на Linux платформе, ОС от компании Apple- Macintosh.

Наиболее популярная в России операционная система Windows - коммерческий продукт компании Microsoft. С 1994 года (Microsoft Windows-95) выпущено большое число версий, ориентированных на разные типы компьютеров, которые за прошедшее время стали существенно мощнее. В том числе, они стали в основном многоядерными, т.е. могут выполнять сразу несколько процессов, увеличились объемы внешней и внутренней памяти, появился интерфейс USB, появилась необходимость в сетевых коммуникациях и, что очень важно, адресное пространство стало 64-х разрядным (т.е. ОС должна обеспечивать доступ к 264 адресам оперативной памяти) и т.п. Регулярно покупатели очередной ОС получают по сети самостоятельно устанавливающиеся обновления, призванные повысить надежность системы. Существенно. Что под эту ОС выпущено очень много пользовательских приложений. Особым достоинством является очень понятный и дружественный интерфейс (исключение составляет версия Windows-8).

К недостаткам относится недостаточная защищенность от вирусов и хакерских атак, проникновение ОС в компьютер пользователя с возможностью доступа к личной информации и передачи ее на сервера разработчика. Кроме того, эта ОС обладает весьма высокой стоимостью.

ОС Macintosh рассчитана в первую очередь на установку на компьютеры этой компании и приложения, также разработанные фирмой Apple. Данная операционная система с определенными устанавливается на IBM – совместимые компьютеры, установка под нее приложений других фирм также является проблемой, часто неразрешимой. Однако интерфейс и сами приложения компании Apple, по мнению менеджеров этой компании, должны удовлетворять все потребности пользователя.

Код данной ОС и техническая документация к ней закрыты. Компьютеры фирмы поставляются с уже установленной системой, что влияет на стоимость этих устройств. В качестве основного достоинства данной ОС называют ее высокую защищенность от вирусов и хакерских атак, что достигается путем шифрования информации. Отметим, что в последних версиях этих операционных систем предусмотрена возможность их установка на IBM - совместимые компьютеры. Причем есть возможность устанавливать на компьютеры несколько операционных систем. Кроме того, фирма Apple предлагает специальные программы, позволяющие устанавливать под данную ОС приложения, разработанные для Windows. Однако такая адаптация требует определенных усилий и квалификации пользователя[8].

Отмечаются следующие важные достоинства МАС ОС:

  • Простота в использовании (дружественный, интуитивно понятный интерфейс)
  • Стабильность работы (то, чего не хватает Windows)
  • Отсутствие проблемы поиска драйверов под новые устройства. Специалисты компании позаботились о широте списка драйверов к практически всем имеющимся в настоящее время устройствам, что, впрочем, относится и к ОС Windows
  • В отличие от ОС Windows, большая часть приложений МАС ОС не инсталлируются, а просто копируются, т.е. отсутствует необходимость в дистрибутиве, а сама установка приложений проще и быстрее.

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

Операционная система Linux является основой для разработки целого ряда ОС. Все они и написанные под них приложения являются принципиально некоммерческими продуктами, свободно распространяемыми по сети. Система открыта и программисты могут дополнять ее собственными приложениями, а также модернизировать.

Хотя данный класс ОС позволяет решать основные пользовательские задачи, адаптация для них ряда приложений (как например Microsoft Office) требует немалых усилий и может реализовываться не для всех версий. Утверждения ряда авторов сайтов о том, что под эти ОС адаптируются любые приложения[9], не подтверждает личный опыт автора настоящей работы под операционной системой Ubuntu.

Linux – подобные ОС хорошо защищены от вирусов и хакерских атак, бесплатны и надежны. Они могут быть рекомендованы системным администраторам и программистам, достаточно хорошо разбирающимся в программном обеспечении, умеющим писать код.

Рассмотрим подробнее ряд функций ОС в следующих главах.

3. Драйверы внешних устройств

При запуске компьютера управление передается программе, зашитой в BIOS (BASIC INPUT OUTPUT SYSTEM – базовой системе ввода- вывода). Эта программа поддерживается источником питания и хранится постоянно. Ее лишь условно можно включить в состав ОС, поскольку она едина для любой операционной системы, более того, она обеспечивает установку самих ОС. Загрузка операционной системы при запуске компьютера проиллюстрирована на рисунке 2.

https://ds04.infourok.ru/uploads/ex/0171/000afdf0-f1706803/img17.jpg

Рисунок 2. Загрузка операционной системы при запуске компьютера

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

Вообще, следует отметить, что при установке (инсталляции) новой программы осуществляется ее регистрация в системном реестре (для ОС Windows). Простое копирование программного файла не обеспечивает его выполнение.

Написанные программы – приложения используют системные драйверы для ввода-вывода, для ряда важных для их работы системных функций, например, доступа к системному таймеру, обращения к файлам и т.п.

Так как любая операционная система должна иметь возможность взаимодействовать с аппаратными средствами, в дистрибутиве (комплекте установки/системных файлах) обязательно находятся драйверы основных (ключевых) составляющих аппаратного обеспечения. Отсутствие таких драйверов лишает систему доступа к аппаратной части, без чего невозможно функционирование компьютера и даже самой инсталляции ОС. Такие «внутренние» драйверы представлены в виде так называемой встроенной библиотеки драйверов. Эта библиотека видоизменяется по составу от версии к версии, в зависимости от этапов развития и модернизации аппаратного обеспечения, а также от тенденций рынка. Драйвера из состава встроенной библиотеки при необходимости, устанавливаются на этапе инсталляции операционной системы в зависимости от обнаружения (идентификации) в компьютере тех или иных устройств. В ходе инсталляции, код модуля обнаружения оборудования осуществляет определение имеющихся в компьютере устройств и проверяет в своей библиотеке наличие соответствующих этим устройствам драйверов. Для тех устройств, для которых системные драйвера имеются в наличии, их установка выполняется в автоматическом (фоновом) режиме. В результате «на выходе», то есть после инсталляции ОС, на компьютере установлен минимально-необходимый для функционирования набор системных драйверов, позволяющий обеспечить работоспособность самого компьютера. Однако следует учесть, что ограничиваться встроенными в дистрибутив драйверами не всегда удается. Для полноценной работы большинства устройств обычно необходимо установить также драйвера, предоставляемые производителем устройства[10]. Драйвера расположены в ядре операционной системы, т.е. находятся в памяти постоянно в период всей работы компьютера. Место драйверов в ОС показано на рисунке 3

http://900igr.net/up/datas/229691/034.jpg

Рисунок 3. Драйвера как часть ОС

4. Диспетчеризация оперативной памяти

Важнейшая аппаратная составляющая компьютера – оперативная память (ОЗУ).

«В многопрограммных ОС «пользовательская» часть памяти – важнейший ресурс вычислительной системы – должна быть распределена для размещения нескольких процессов, в том числе процессов ОС. Эта задача распределения выполняется операционной системой динамически специальной подсистемой управления памятью (memory management). Эффективное управление памятью жизненно важно для многозадачных систем. Если в памяти будет находиться небольшое число процессов, то значительную часть времени процессы будут находиться в состоянии ожидания ввода-вывода и загрузка процессора будет низкой.»[11]

Во время работы в оперативную память записываются программы (в двоичном коде) и данные к ним. Например, как только мы вызываем Word, ядро этого текстового процессора переписывается с жесткого диска в оперативную память, где и хранится вплоть до закрытия этой программы (при свертывании окна, визуализирующего данное приложение, сам код программы остается в ОЗУ). В оперативную же память считываются и в ней же программно и обрабатываются тексты. Как известно, можно вызвать несколько приложений, а также разные файлы данных для этих приложений (несколько документов, несколько книг электронных таблиц, рисунков и т.п. Кроме того, в ОЗУ постоянно находится ядро операционной системы и основные драйверы, поскольку без них, как уже говорилось выше, компьютер не может функционировать. В ходе выполнения самих программ им может потребоваться дополнительно занять какое-то место в оперативной памяти для выполнения своих внутренних операций, сохранения результатов и т.п. Учтем также, что все программы при трансляции начинаются с некой ячейки памяти с нулевым адресом. При загрузке же программы ее начальный адрес отнюдь не нулевой, но смещен на место свободной памяти. Таким образом, операционная система должна «знать» какое место в памяти занято, какое – свободно, уметь своевременно освобождать место в оперативной памяти (например, при закрытии программ). При этом желательно размещать программы (процессы) в единой области памяти, а не фрагментарно. В литературе отмечается, что при управлении оперативной памятью имеет место ряд проблем, допускающих различные подходы к построению такого управления, поэтому в различных операционных системах можно столкнуться с различной реализацией управления ОЗУ. В ходе преодоления проблемы фрагментации памяти ОС реализует следующие функции:

  1. Перемещение всех занятых участков в сторону старших или младших адресов при каждом завершении процесса или для вновь создаваемого процесса в случае отсутствия раздела достаточного размера.
  2. Коррекция таблиц свободных и занятых областей.
  3. Изменение адресов команд и данных, к которым обращаются процессы при их перемещении в памяти, за счет использования относительной адресации.
  4. Аппаратная поддержка процесса динамического преобразования относительных адресов в абсолютные адреса основной памяти.
  5. Защита памяти, выделяемой процессу, от взаимного влияния других процессов[12].

Итак, управление памятью является весьма непростым процессом, поддерживаемым рядом таблиц (также размещенных в ОЗУ), взаимодействием с механизмами загрузки и выгрузки в/из памяти программных продуктов и данных к ним, а также взаимодействия с самими программными продуктами с целью предоставления им места в свободной памяти и освобождения этого места.

Отметим также, что, если задаче не хватает места в оперативной памяти, операционная система использует внешнюю память (в первую очередь – жесткий диск), что, естественно, замедляет выполнения задачи, а также усложняет программную реализацию функции управления памятью. При распределении оперативной памяти операционная система может использовать ряд принципов, проиллюстрированных на рисунке 4.

https://ok-t.ru/studopediaru/baza9/335943297385.files/image002.jpg

Рисунок 4. Медоды распределения памяти, используемые ОС

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

5. Файловая система как важнейшая функция ОС

Файловой системой называется составная часть операционной системы, отвечающая за хранение данных в долговременной памяти (жёсткий диск, флеш-память, компакт-диски и пр.).

«В широком смысле понятие «файловой системы» подразумевает:

  • совокупность всех файлов на носителе (диск, флэш и пр,
  • наборы структур данных, которые используются для управления файлами и их организации, как-то каталоги, дескрипторы файлов, таблицы распределения свободного и занятого пространства на носителе,
  • комплекс программных средств, предоставляемых операционной системой и специальными приложениями, посредством которых реализуется управление файлами, в том числе: создание, копирование, перемещение, уничтожение, чтение, запись, именование и переименование, поиск и другие действия[13].
  • «Основные задачами файловой системы это:
  • Хранение информации
  • Структурирование файлов
  • Обеспечение прав доступа к данным
  • Защита данных
  • Создание однородной среды для разных носителей информации»[14]

Файловая система дает возможность программам обходиться набором весьма простых действий для выполнения операций над некоторым абстрактным объектом, представляющим файл[15]. Существенно, что пользователи и программисты избавлены от необходимости знать детали истинного размещения информации на диске (или ином носителе), буферизации данных и других низкоуровневых проблем передачи информации с запоминающего устройства в ОЗУ и записи из внутренней памяти на носитель. Эти функции возлагаются на файловую систему. Файловая система распределяет внешнюю память, поддерживает именование файлов, отображает имена файлов в соответствующие адреса во внешней памяти, поддерживает доступ к данным, разделение, защиту и восстановление данных.

Таким образом, файловая система выполняет функцию посредника, который берет на себя все проблемы физической организации долговременного хранилища информации и создает для программ более простую логическую модель такого хранилища, в рамках которой предоставляет им ряд команд, удобных в использовании для работы с файлами.

Классическая схема организации программного обеспечения файловой системы представлена на следующем рисунке:

Организация программного обеспечения файловой системы

Рисунок 5. Организация программного обеспечения файловой системы[16]

При обсуждении файловой системы следует особо остановиться на именах файлов, которые обычно состоят из двух частей – собственно имени и расширения. Эти части принято разделять точкой. Если собственно имя определяется создателем файла (рекомендуется давать имя, отражающее смысл файла, т.е. функционально являющееся содержательным заголовком), то расширение определяет тип файла, т.е. говорит о том, как этот файл кодируется и какую программу следует сопоставить для обработки файла данного типа. Например, файлы с расширением txt – простые тексты, «понимаемые» любым текстовым редактором, расширения doc, docx, docm и др. говорят о создании и обработке их текстовым процессором Word. Расширение pdf говорит о том, что файл создан и обрабатывается в первую очередь приложениями, созданными компанией Adobe. Это весьма компактные файлы, содержащие тексты, графику, хорошо приспособленные для размещения на сайтах сети Интернет. Файлы с расширением gif, tiff, gpeg – графические, обрабатываемые соответственно графическими редакторами.

Отдельно остановимся на расширении exe (от execute – исполнять). Это файлы – программы. Операционная система не только загружает их в оперативную память, соответственно настраивая адреса в этих программах, но и передает этим файлам управление.

Для более удобной для пользователя логической организации информации существуют файлы – каталоги. Они как бы разделяют пространство носителя на отдельные составляющие, в которых, в свою очередь, хранятся файлы и подкаталоги. Таким образом, файловая система предоставляет пользователю возможность группировать свои файлы по какому-либо признаку. Заметим, что такая операционная система как Windows по умолчанию при своей установке также создает ряд каталогов (папок) в режиме умолчания. Например, каталог «Рабочий стол», «Документы», «Windows» и др.

В книге Олифер Н. А., Олифер В. Г. «Сетевые операционные системы» приведено подробное описание файловых систем. В частности, приведены схемы логической организации файловой системы:

http://citforum.ru/pictures/it/sos/img00036.gif

а - одноуровневая;
б - иерархическая (дерево);
в - иерархическая (сеть)

Рисунок 6. Логическая организация файловой системы[17]

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

«В разных файловых системах может быть определен свой список различных прав доступа. Этот список может включать такие операции как:

  • создание файла,
  • уничтожение файла,
  • открытие файла,
  • закрытие файла,
  • чтение файла,
  • запись в файл,
  • дополнение файла,
  • поиск в файле,
  • получение атрибутов файла,
  • установление новых значений атрибутов,
  • переименование,
  • выполнение файла,
  • чтение каталога, и другие операции с файлами и каталогами»[18].

Заметим также, что файловая система управляет псевдофайлами, т.е. файлами, направленными не на носитель, а на устройства ввода-вывода, обеспечивая таким образом связь с дисплеем, принтером, клавиатурой и т.п.

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

6. Сервисные программы операционной системы и графический интерфейс

Внутренняя структура операционной системы, как правило, скрыта от пользователя. Однако при установке ОС пользователю предоставляется ряд приложений, обеспечивающих удобства при работе с компьютером и решение наиболее важных для большинства пользователей задач. В первую очередь пользователь получает средства для управления файлами, вызова приложений, выхода в сеть. Так, графический интерфейс является важнейшей частью операционной системы.

Среди предоставляемых приложений, предоставляемых ОС Windows, особо отметим такое важное, как «Проводник». Эта программа позволяет копировать, перемещать, удалять, переименовывать файлы, создавать каталоги (папки) и подкаталоги и пр. В состав ОС Windows входят также два текстовых редактора: «Блокнот» и «Wordpad». Первый работает только с простыми текстами в формате ASCII (txt файлы), второй уже дает возможность варьировать шрифты, абзацы, хотя, конечно, он значительно менее функционален чем текстовый процессор «Word» и его аналоги. Предоставлен пользователю браузер для работы с Интернет, простой графический редактор, способный, однако, обрабатывать наиболее часто используемые форматы графических файлов.

В последние версии ОС Windows включено приложение Skype. Существует значительное число файлов, служащих для тестирования звуков, графики и т.п.

Операционная система дает возможность настраивать себя и в определенной мере свой интерфейс. Так, пользователь может сам выбрать рисунок для Рабочего стола, в том числе и из собственных фотографий, может настроить программы, которые будут по умолчанию загружаться для обработки файлов с определенными расширениями, может предоставить доступ к своим файлам и папкам пользователям локальной сети и т.д. Пользователь может настраивать текущие дату и время, громкость динамиков или наушников, яркость экрана, режим энергосбережения и пр.

Программа «Диспетчер задач» позволяет прервать выполнение любой программы нажатием клавиш CTRL-ALT-DELETE, после чего, например, снять зависшую задачу, либо вообще завершить работу компьютера. Имеются также приложения, ориентированные на работу людей с ослабленным зрением, на отслеживание изменений в компьютере. Последние приложения используются в первую очередь администраторами сетей.

Приведенный список далеко не исчерпывает все возможные приложения, поставляемые вместе с операционной системой. Кроме того, от версии к версии, число таких приложений увеличивается, а их состав все более соответствует основным запросам потребителей.

7. Сетевые ОС и ОС мобильных устройств

«В то время как аппаратная часть компьютера устаревает за несколько лет, полезная жизнь операционных систем может измеряться десятилетиями. Поэтому операционные системы всегда изменяются со временем эволюционно, и эти изменения более значимы, чем изменения аппаратных средств. Изменения ОС обычно заключаются в приобретении ею новых свойств, например поддержке новых типов внешних устройств или новых сетевых технологий.»[19]

Вообще говоря, данные операционные системы едва ли относятся к операционным системам персональных компьютеров, а именно о ПК речь шла в задании на данную работу. Тем не менее, мы рассмотрим кратко и данные операционные системы.

Отметим, что в основу и сетевых, и мобильных устройств заложена классическая Фон-Неймановская модель, а потому перечисленные выше функции ОС актуальны и будут актуальны до тех пор, пока не произойдет (если произойдет!) переход к принципиально новой модели компьютеров, например, без оперативной памяти или без внешних устройств, управляемых посредством драйверов. Пока что такая схемотехническая революция и не просматривается, и не обсуждается. Следовательно, совершенствование ОС и их функциональности идет эволюционным путем, в первую очередь за счет расширения списка драйверов внешних устройств, а также ликвидации уязвимостей, т.е. защиты устройств от внешних воздействий по сети.

Для современных операционных систем, в первую очередь – сетевых ОС, особенно важной становится коммуникационная функция, т.е. возможность обеспечения межкомпьютерной связи как по проводной, так и беспроводной сети. Отметим, что беспроводные соединения сегодня являются наиболее популярными, а применительно к мобильным устройствам - доминирующими.

Это значит, что операционные системы должны обеспечивать непрерывную бесперебойную связь с удаленными устройствами, как-то серверами, персональными компьютерами и другими мобильными устройствами. Разумеется, такая связь обеспечивается не только ОС, но и средствами «покрытия» данной территории приемо-передающими ретрансляционными устройствами. То есть ОС должна контролировать возможность соединения по сети, получения сигналов, их обработку.

Помимо коммуникационной, для сетевых ОС называют также следующие функции:

  • управление файлами и каталогами;
  • управление ресурсами;

Можно заметить, что эти функции полностью соответствуют функциям ОС сорокалетней давности, просто состав ресурсов стал существенно более широк, а такие устройства, как матричные принтеры, вообще исчезли с рынка и из обихода. Если ОЗУ также отнести к ресурсам, то можно говорить о заметной преемственности сетевых ОС классическим операционным системам. Однако при этом мобильные ОС отличаются тем, что обеспечивают доступ не только и даже не столько к локальным, сколько к сетевым ресурсам, т.е. к приложениям, размещенным на серверах, к информации, находящейся на серверах и в «облаке», то есть для пользователя не важно, откуда конкретно берется информация и средства работы с ней, важно, чтобы она появлялась у него на устройстве быстро и работала надежно. Именно это должна обеспечивать операционная система.

  • защита от несанкционированного доступа;
  • обеспечение отказоустойчивости;
  • управление сетью.

Эти три функции как бы расширяют и детализируют коммуникационную функцию.

Функция защиты от несанкционированного доступа должна обеспечивать поддержание целостности данных и их конфиденциальность. Для этого реализуется возможность таких настроек средств защиты как:

Доступ к данным только с определенных адресов или определенных устройств, определенным пользователям, распознаваемым по их паролям, доступ в определенное время с ограничением прав доступа и т.п.

При обсуждении отказоустойчивости как важной функции современных операционных систем, обратим внимание на статью Д.Н. Симоненко[20]. Этот автор замечает, что появился ряд новых идей обеспечения отказоустойчивости, среди которых подход, основанный на изоляции драйверов, который предложен Свифтом и Бершадом и реализован в форме прототипной подсистема, получившей название Nooks. «Nooks позволяет выполнять драйверы в особых областях, для которых устанавливаются ограничения записи в адресном пространстве ядра. Nooks отслеживает все попытки доступа или произошедшие сбои, и обеспечивает возможность автоматического восстановления». Называются ключевые принципы, положенные в основу данной подсистемы:

  • Совместимость. Архитектура должна быть совместима или иметь лишь минимальные отличия от существующих систем и их расширений
  • Изоляция сбоев. Архитектура должна строиться так, чтобы изолировать важные структуры ядра от ошибок в системных расширениях и драйверах.
  • Самовосстановление. Архитектура должна обеспечивать автоматическое восстановление при сбоях.

В цитируемой публикации приводится схема изоляции драйверов (рисунок 7):

https://moluch.ru/conf/blmcbn/165/m315a19ce.png

Рисунок 7. Организация подсистемы изоляции драйверов

Д. Симоненко также пишет о том, что для обеспечения надежности и отказоустойчивости имеет смысл разрабатывать операционные системы на специализированных языках программирования, отличных от традиционных С или С++. Однако из статьи не понятно, как должна быть реализована виртуальная машина, какими должны быть интерпретаторы (а не компиляторы), для того, чтобы обеспечить устойчивость операционной системы, работающей в своей собственной среде. Представляется, что интерпретирующая среда ОС, во-первых, окажется более медленной, во-вторых, построенные на ее основе языки будут обладать не меньшей уязвимостью, чем уязвимость откомпилированного кода.

В статье также говорится о возможных новых принципах управления оперативной памятью при ее динамическом распределении и освобождении («сборке мусора»). Безусловно, использование для этой цели рекурсивных процедур и стековой организации обращения памяти требует существенных временных затрат, а также затрат памяти. Для решения данной проблемы предлагается использовать определенные специализированные диалекты с языков Java, Oberon, C# и др. Поскольку автор настоящей работы не является специалистом в области системного программирования, данные предложения только упоминаются, но дать им квалифицированную оценку не представляется возможным. Заметим, однако, что речь идет об оптимизации функций управления оперативной памятью, а не о принципиальном уходе от данной функции.

Вопрос безопасности и защиты данных может решаться и решается путем шифрования данных, однако при этом снижается скорость работы операционной системы.

Среди особенностей мобильных операционных систем отметим также необходимость управлять таким важным ресурсом как энергопотребление. Действительно, мобильные устройства должны обеспечивать минимальное энергопотребление, хотя сегодня имеется широкий спектр устройств для их мобильной подзарядки с переносных энергохранилищ, а на транспорте, на предприятиях общественного питания и пр. имеется возможность подзарядки мобильных устройств. Тем не менее, мобильные операционные системы предлагают широкий спектр регулирования яркости экрана, автоматического выключения экрана и акустических устройств и другие функции, способствующие режиму энергосбережения. ОС Android от компании Google. Обеспечивает возможность настройки не только экрана, но и фоновых процессов, на режим энергосбережения. При этом пользователь имеет возможность мониторить энергозатраты на отдельные фоновые процессы и устанавливать для них определенные пределы[21].

Еще одна важная функция мобильных ОС – коммуникация с пользователем за счет специфического интерфейса на базе сенсорного экрана. Специфика интерфейса мобильных устройств заключается в том, что он рассчитан в первую очередь на коммуникацию, например, на вызов расписания транспорта, на переход на сайт заказа билетов, на вход в какой-либо живой журнал, на обращение к переводчику и т.п. То есть пиктограммы должны быть максимально понятны, движения пальцев по экрану четко восприниматься соответствующими драйверами. Требуется высокая степень согласованности между драйверами операционной системы и высокое качество самих драйверов, поддерживающих акустические и видеовозможности мобильных устройств.

Заметим, что попытка фирмы Microsoft перенести идеологию интерфейса мобильных устройств на операционные системы, осуществленная в Windows 8, не нашла понимания у покупателей, и уже в следующей версии операционной системы компания вернулась к традиционному интерфейсу ПК.

Таким образом, функции операционных систем для мобильных устройств отличает:

  • большая жесткость по ресурсам (процессоры менее мощные чем у ПК, оперативная память также имеет меньший объем);
  • более высокие требования к коммуникации;
  • более высокие требования к работе в мультимедийной среде (фото, видео, звук);
  • специфическое решение проблемы многозадачности, т.е. обеспечение уведомлений пользователя о внешних воздействиях (телефонные вызовы, СМС, звонки из специальных приложений, письма…);
  • специфический интерфейс.

Заключение

Итак, мы видим, что операционная система является столь же необходимой для работы компьютера компонентой, сколь и материальные составляющие: материнская плата с установленными на ней процессором, оперативной памятью, портами ввода-вывода и пр. И стоимость программного обеспечения сопоставима со стоимостью компьютера, а сложность написания ОС сопоставима со сложностью разработки «железа», т.е. той же процессорной платы, жесткого диска, клавиатуры, монитора и т.п.

В настоящее время операционные системы необходимы на мобильных устройствах (айфонах, смартфонах), которые по сути также являются компьютерами. Естественно, функциональность таких ОС несколько иная, однако они также должны «уметь» управлять файлами, памятью, отслеживать временные параметры и т.п. Особые функции таких систем – управлять связью, обеспечивать локацию, т.е. местоположение устройства и, что очень важно, позволять оперативно получать и настраивать различные приложения.

За продолжительный период существования операционных систем их алгоритмы и методы разработки ОС хорошо изучены. Принципам создания операционных систем обучают в высших учебных заведениях будущих профессиональных программистов. Тем не менее, операционные системы постоянно совершенствуются: разрабатываются новые, модернизируются и усовершенствуются находящиеся в эксплуатации. Основные направления совершенствования ОС следующие[22]:

  • Повышение функциональности с учетом появления новой аппаратуры, новых пользовательских запросов
  • Формирование все более «дружественного» (простого и понятного) пользовательского интерфейса. Визуальный интерфейс рассматривается сегодня как необходимая часть компьютера.
  • Обеспечение безопасности и защиты от вирусов, хакерских атак и просто случайных ошибок пользователя.
  • Ускорение работы и сокращение места в памяти.

Важнейшая тенденция – обслуживание многоядерных систем, т.е. компьютеров с несколькими процессорами, что обеспечивает параллельное выполнение ряда функций, но требует от ОС четкой временной координации процессов.

Особо отметим тенденцию последних лет, касающуюся вообще всего ПО: размещение основных программ «в облаке». Функция ядра ОС в этом случае состоит в быстром получении данных и приложений их «облака». То есть связь с серверами и обеспечение удаленных коммуникаций стала важнейшей функцией операционной системы.

Очевидно, что развитие операционных систем с необходимостью будет сопровождать процесс совершенствования компьютерных и мобильных систем.

Что касается принципиально новых способов функционирования ОС, а также отказа от какой-либо из рассмотренных выше функций, то вероятность таких событий в ближайшие годы представляется автору данной работы сомнительной.

Список источников и литературы

  1. История развития операционных систем. Электронный ресурс. Режим доступа: https://yandex.ru/images/search?text=2Fimage-2.jpg&rpt=simage
  2. Карпов В.Е., Коньков К.А Основы операционных систем Интернет-университет Информационных технологий. Москва, 2004, 632 с
  3. Команда PING - отправить эхо-запрос по протоколу ICMP на имя или IP-адрес целевого узла. Электронный ресурс. Режим доступа: https://ab57.ru/cmdlist/ping.html
  4. Макарова Н.В., Курс информатики для экономических вузов, СПб, Питер, 2001
  5. Назаров С.В Операционные среды, системы и оболочки. Основы структурной и функциональной организации М.:КУДИЦ-ПРЕСС, 2007.- 504 с
  6. Олифер Н. А., Олифер В. Г.,Сетевые операционные системы. Изд. Центра Информационных Технологий, М., 2004
  7. Операционная система MAC OS X. Ответы на часто задаваемые вопросы. Электронный ресурс. Режим доступа: https://pc4me.ru/operatsionnaya-sistema-mac-os-x-otvetyi-na-chasto-zadavaemyie-voprosyi.html
  8. Операционные системы. Электронный ресурс. Режим доступа: http://datadump.ru/windows-driver/
  9. Операционные системы. Электронный ресурс. Режим доступа: http://datadump.ru/windows-driver/
  10. Перспективы развития операционных систем. Электронный ресурс. Режим доступа: https://www.intuit.ru/studies/courses/641/497/lecture/11328
  11. Рудь Алла, Ubuntu – описание ОС: актуальные версии, плюсы, минусы. Электронный ресурс. Режим доступа: https://hyperhost.ua/info/ubuntu-opisanie-os-aktualnyie-versii-plyus
  12. Связь аппаратной и программной составляющих через операционную систему. Электронный ресурс. Режим доступа: https://yandex.ru/images/search? 2Fslide-11.jpg&rpt=simage
  13. Сетевые операционные системы. Основные операции, осуществляемые в сети с помощью сетевых операционных систем. Электронный ресурс. Режим доступа http://infofiz.ru/index.php/poks/poks/198-lk4
  14. Сетевые операционные системы: структура, назначение, функции, электронный ресурс. Режим доступа: http://teacherbox.ru/kompseti/

pm02/lesson2/setevyieos/.html

  1. Сетевые операционные системы. Электронный ресурс. Режим доступа: http://citforum.ru/operating_systems/sos/glava_4.shtml
  2. Симоненко Д. Н. Современные подходы к повышению отказоустойчивости операционных систем [Текст] // Технические науки: проблемы и перспективы: материалы Междунар. науч. конф. (г. Санкт-Петербург, март 2011 г.). — СПб.: Реноме, 2011. — С. 153-156. — URL https://moluch.ru/conf/tech/archive/2/165/ (дата обращения: 14.02.2020).
  3. Современные операционные системы. Лекция «Функции ОС по управлению памятью». Электронный ресурс. Режим доступа: https://www.intuit.ru/studies/courses/631/487/lecture/11057?page=2
  4. Таненбаум Э Современные операционные системы. 4-е изд СПб.: Питер, 2006. – 1040 с
  5. Файловая система. Электронный ресурс. Режим доступа: http://citforum.ru/operating_systems/sos/glava_10
  6. Функции файловой системы. Электронный ресурс. Режим доступа: https://www.e-ope.ee/_download/euni_repository/file/3410/4646.rar/
  7. 4646/EUCIP/uni_EUCIP/haldus_vk/235__.html
  8. Шундрин В., Android и другие мобильные ОС. Сравнительный анализ //Материалы научно-практической конференции, Самара, 2015
  1. Команда PING это, пожалуй, самая используемая сетевая утилита командной строки. PING присутствует во всех версиях всех операционных систем с поддержкой сети и является простым и удобным средством опроса узла по имени или его IP-адресу. (Команда PING -  отправить эхо-запрос по протоколу ICMP на имя или IP-адрес целевого узла. Электронный ресурс. Режим доступа: https://ab57.ru/cmdlist/ping.html На данном сайте имеется ссылка для знакомства со всем списком команд cmd)

  2. Источник: https://yandex.ru/images/search?text=2Fimage-2.jpg&rpt=simage

  3. Макарова Н.В., Курс информатики для экономических вузов, СПб, Питер, 2001

  4. Источник: электронный ресурс. Режим доступа: https://yandex.ru/images/search? 2Fslide-11.jpg&rpt=simage

  5. Сетевые операционные системы. Электронный ресурс. Режим доступа: http://citforum.ru/operating_systems/sos/glava_4.shtml

  6. Операционные системы. Электронный ресурс. Режим доступа: http://datadump.ru/windows-driver/

  7. «Все современные операционные системы Microsoft — Windows NT 4.0, Windows 95, Windows 98, Windows 2000 — поддерживают так называемые профили пользователя. Профиль представляет собой набор данных, полностью описывающих текущую рабочую среду пользователя. С каждым пользователем ассоциирован собственный профиль, что позволяет ему получать при работе с системой ту конфигурацию рабочей среды, которая соответствует специфике именно его деятельности, вне зависимости от других пользователей, работающих за тем же компьютером в другое время. Администратор имеет возможность заранее сформировать пользовательский профиль и тем самым подготовить для сотрудника рабочую среду, в которой тот сможет наиболее продуктивно решать стоящие перед ним задачи. Профили могут храниться на сервере и автоматически загружаться при входе пользователя в систему. Благодаря этому, пользователь имеет одну и ту же рабочую среду на любом компьютере сети.» (Сетевые операционные системы. Основные операции, осуществляемые в сети с помощью сетевых операционных систем. Электронный ресурс. Режим доступа¨http://infofiz.ru/index.php/poks/poks/198-lk4)

  8. Подробно потенциал MAC OC с характеристиками достоинств и недостатков этой операционной системы описан в публикации: Операционная система MAC OS X. Ответы на часто задаваемые вопросы. Электронный ресурс. Режим доступа: https://pc4me.ru/operatsionnaya-sistema-mac-os-x-otvetyi-na-chasto-zadavaemyie-voprosyi.html

  9. Рудь Алла, Ubuntu – описание ОС: актуальные версии, плюсы, минусы. Электронный ресурс. Режим доступа: https://hyperhost.ua/info/ubuntu-opisanie-os-aktualnyie-versii-plyus/

  10. Операционные системы. Электронный ресурс. Режим доступа: http://datadump.ru/windows-driver/

  11. Современные операционные системы. Лекция «Функции ОС по управлению памятью». Электронный ресурс. Режим доступа: https://www.intuit.ru/studies/courses/631/487/lecture/11057?page=2

  12. Современные операционные системы. Лекция «Функции ОС по управлению памятью». Электронный ресурс. Режим доступа: https://www.intuit.ru/studies/courses/631/487/lecture/11057?page=2

  13. Файловая система. Электронный ресурс. Режим доступа: http://citforum.ru/operating_systems/sos/glava_10

  14. Функции файловой системы. Электронный ресурс. Режим доступа: https://www.e-ope.ee/_download/euni_repository/file/3410/4646.rar/4646/EUCIP/uni_EUCIP/haldus_vk/235__.html

  15. Файл определен как именованная информация на носителе. При этом информация может быть любой, носитель же понимается как долговременная память. Важно, что пользователь имеет возможность обращаться к файлу по имени, не интересуясь его физическим расположением на носителе, а также кодировкой файла.

  16. Карпов В.Е., Коньков К.А Основы операционных систем Интернет-университет Информационных технологий. Москва, 2004

  17. Олифер Н. А., Олифер В. Г.,Сетевые операционные системы. Изд. Цент ра Информационных Технологий, М., 2004

  18. Там же

  19. Сетевые операционные системы: структура, назначение, функции, электронный ресурс. Режим доступа: http://teacherbox.ru/kompseti/pm02/lesson2/setevyieos/.html. Приведенный эпиграф говорит о том, что функциональность ОС может расширяться, но основные функции, разработанные 30-40 лет назад могут совершенствоваться, но не могут ликвидироваться, а потому их рассмотрение в рамках данной работы вполне оправдано:

  20. Симоненко Д. Н. Современные подходы к повышению отказоустойчивости операционных систем [Текст] // Технические науки: проблемы и перспективы: материалы Междунар. науч. конф. (г. Санкт-Петербург, март 2011 г.). — СПб.: Реноме, 2011. — С. 153-156. — URL https://moluch.ru/conf/tech/archive/2/165/ (дата обращения: 14.09.2019).

  21. Шундрин В., Android и другие мобильные ОС. Сравнительный анализ //Материалы научно-практической конференции, Самара, 2015

  22. Перспективы развития операционных систем. Электронный ресурс. Режим доступа: https://www.intuit.ru/studies/courses/641/497/lecture/11328