Что такое информатика 8 страница
4. Операционная система предназначена для того, чтобы скрыть от пользователя и даже от прикладного программиста все эти сложности. Она состоит из уровня программного обеспечения, который частично избавляет от необходимости общения с аппаратурой напрямую, вместо этого предоставляя программисту более удобную систему команд. В продолжение предыдущего примера, можно сказать, что чтение блока с диска из файла в этом случае представляется ему намного более простым, чем когда нужно заботиться о перемещении головок диска, ждать, пока они установятся на нужное место и т.д.
5. Над операционной системой на нашем рисунке расположены остальные системные программы. Здесь находятся интерпретатор команд (оболочка), системы окон, компиляторы, редакторы и т.д. Важно понимать, что подобные программы не являются частью операционной системы, хотя обычно поставщики компьютеров устанавливают их на машины. Это очень важное замечание. Под операционной системой обычно понимается то программное обеспечение, которое запускается в режиме ядра или, как его еще называют, режиме супервизора. Она защищена от вмешательства пользователя с помощью аппаратных средств. Компиляторы и редакторы запускаются в пользовательском режиме. Если пользователю не нравится какой-либо компилятор, он при желании может написать свой собственный, но он не может написать собственный обработчик прерываний системных часов, являющийся частью операционной системы и обычно защищенный аппаратно от попыток его модифицировать.
Существуют системы, в которых это различие размыто. К ним относятся встроенные системы, они могут не иметь режима ядра, или интерпретируемые системы, подобные основанным на Java операционным системам, в которых для разделения компонентов используется интерпретация, а не оборудование. Но в традиционных компьютерах операционная система представляет собой набор программ, запускающихся в режиме ядра.
Во многих системах есть программы, которые работают в пользовательском режиме, но помогают операционной системе или выполняют специализированные функции. Например, часто встречаются программы, позволяющие пользователям изменять свои пароли. Они не являются частью операционной системы и запускаются не в режиме ядра, но выполняемые ими функции влияют на работу системы, и такие программы должны быть определенным способом защищены от воздействия пользователя.
6. Над системными программами расположены прикладные программы. Обычно они покупаются или пишутся пользователем для решения собственных проблем - обработки текста, электронных таблиц, технических расчетов или сохранения информации в базе данных.
Первые три уровня можно объединить под общим названием «технический уровень». Четвертый и пятый можно условно назвать уровень «системных программ». Последний, шестой, можно назвать уровнем «прикладных программ».
Представив компьютерную систему таким образом, мы готовы привести универсальное определение операционной системы.
Операционная система (ОС) - набор программ, как обычных так и микропрограмм, которые обеспечивают возможность использования аппаратуры компьютера, при этом аппаратура компьютера представляет собой «сырой» материал, а задача ОС заключается в том, чтобы сделать аппаратуру доступной и, по возможности, удобной для пользователя.
Исходя из задач ОС, неотделимо связанных с данным определением, можно выделить основные функции ОС, среди которых:
• определение интерфейса пользователя,
• обеспечение разделения аппаратных ресурсов между пользователями,
• предоставление возможности работы с общими данными,
• планирование доступа пользователей к общим ресурсам,
• обеспечение эффективного выполнения операций ввода/вывода,
• осуществление восстановления информации и вычислительного процесса в случае ошибок.
Необходимо заметить, что в распоряжение ОС предоставляются как пассивные, так и активные ресурсы. Поэтому классификация ресурсов ОС видится следующим образом:
Пассивные ресурсы - управляемые ресурсы:
• процессоры,
• память,
• устройства ввода/вывода,
• данные.
Активные ресурсы - управляющие ресурсы:
• операторы ЭВМ,
• различные программисты (прикладные, системные),
• административный персонал,
• программы пользователя.
Можно сказать, что ОС, основываясь на потребностях и возможностях своего активного ресурса и с учетом предоставленного в распоряжение пассивного ресурса, выполняет поставленные перед ней задачи посредника.
Следующим шагом в рассмотрении ОС можно считать приведение классификации ОC с различных точек зрения.
5.2 Особенности алгоритмов управления ресурсами
От эффективности алгоритмов управления пассивными ресурсами компьютера во многом зависит эффективность всей ОС в целом. Поэтому, характеризуя ОС, часто приводят важнейшие особенности реализации функций ОС по управлению процессорами, памятью, внешними устройствами. Так, в зависимости от особенностей использованного алгоритма управления процессором, операционные системы делят на многозадачные и однозадачные, многопользовательские и однопользовательские, на многопроцессорные и однопроцессорные системы.
1. Поддержка многозадачности
По числу одновременно выполняемых задач операционные системы могут быть разделены на два класса:
• однозадачные (например, MS-DOS, MSX) и
• многозадачные (OC EC, OS/2, UNIX, Windows 95).
Однозадачные ОС в основном выполняют функцию предоставления
пользователю виртуальной машины, делая более простым и удобным процесс взаимодействия пользователя с компьютером. Однозадачные ОС включают средства управления периферийными устройствами, средства управления файлами, средства общения с пользователем.
Многозадачные ОС, кроме вышеперечисленных функций, управляют разделением совместно используемых ресурсов, таких как процессор, оперативная память, файлы и внешние устройства.
Для полноты рассмотрения данного класса ОС необходимо упомянуть, что существует вытесняющая и невытесняющая многозадачность.
Способ распределения процессорного времени между несколькими одновременно существующими в системе процессами во многом определяет специфику ОС. Среди множества существующих вариантов реализации многозадачности можно выделить две группы алгоритмов:
• невытесняющая многозадачность (NetWare, Windows 3.x);
• вытесняющая многозадачность (Windows NT, OS/2, UNIX).
Основным различием между вытесняющим и невытесняющим вариантами многозадачности является степень централизации механизма планирования процессов. В первом случае механизм планирования процессов целиком сосредоточен в операционной системе, а во втором - распределен между системой и прикладными программами. При невытесняющей многозадачности активный процесс выполняется до тех пор, пока он сам, по собственной инициативе, не отдаст управление операционной системе для того, чтобы та выбрала из очереди другой готовый к выполнению процесс. При вытесняющей многозадачности решение о переключении процессора с одного процесса на другой принимается операционной системой, а не самим активным процессом.
2. Поддержка многопользовательского режима
По числу одновременно работающих пользователей ОС делятся на:
• однопользовательские (MS-DOS, Windows 3.x, ранние версии OS/2);
• многопользовательские (UNIX, Windows NT).
Главным отличием многопользовательских систем от однопользовательских является наличие средств защиты информации каждого пользователя от несанкционированного доступа других пользователей. Следует заметить, что не всякая многозадачная система является многопользовательской, и не всякая однопользовательская ОС является однозадачной.
3. Многопроцессорная обработка
Другим важным свойством ОС является отсутствие или наличие в ней средств поддержки многопроцессорной обработки - мультипроцессирование. Мультипроцессирование приводит к усложнению всех алгоритмов управления ресурсами.
Функции поддержки многопроцессорной обработки данных имеются в таких операционных системах, как: OS/2 фирмы IBM, Windows NT фирмы Microsoft, NetWare 4.1 фирмы Novell и некоторых других.
Многопроцессорные ОС в свою очередь можно классифицировать по способу организации вычислительного процесса в системе с многопроцессорной архитектурой: асимметричные ОС и симметричные ОС. Асимметричная ОС целиком выполняется только на одном из процессоров системы, распределяя прикладные задачи по остальным процессорам. Симметричная ОС полностью децентрализована и использует весь пул процессоров, разделяя их между системными и прикладными задачами.
Выше были рассмотрены характеристики ОС, связанные с управлением только одним типом ресурсов - процессором. Важное влияние на облик операционной системы в целом, на возможности ее использования в той или иной области оказывают особенности и других подсистем управления локальными ресурсами - подсистем управления памятью, файлами, устройствами ввода-вывода.
5.3 Особенности аппаратных платформ
На свойства операционной системы непосредственное влияние оказывают аппаратные средства, на которые она ориентирована. По типу аппаратуры различают операционные системы персональных компьютеров, мини-компьютеров, мейнфреймов, кластеров, встроенные ОС и оС сетей ЭВМ.
1. Первую категорию составляют операционные системы для персональных компьютеров. Их работа заключается в предоставлении удобного интерфейса для одного пользователя. Такие системы широко используются для работы с текстом, электронными таблицами и доступа в Интернет. Наиболее яркие примеры - это Windows XP, MacOS и Linux.
2. Очевидно, что ОС большой машины (мини-компьютера) является более сложной и функциональной, чем ОС персонального компьютера.
Так, в ОС больших машин функции по планированию потока выполняемых задач, очевидно, реализуются путем использования сложных приоритетных дисциплин и требуют большей вычислительной мощности, чем в ОС персональных компьютеров. Аналогично обстоит дело и с другими функциями.
Так, сетевая ОС имеет в своем составе средства передачи сообщений между компьютерами по линиям связи, которые совершенно не нужны в автономной ОС. На основе этих сообщений сетевая ОС поддерживает разделение ресурсов компьютера между удаленными пользователями, подключенными к сети. Для поддержания функций передачи сообщений сетевые ОС содержат специальные программные компоненты, реализующие популярные коммуникационные протоколы, такие как IP, IPX, Ethernet и другие.
Многопроцессорные системы требуют от операционной системы особой организации, с помощью которой сама операционная система, а также поддерживаемые ею приложения могли бы выполняться параллельно отдельными процессорами системы. Параллельная работа отдельных частей ОС создает дополнительные проблемы для разработчиков ОС, так как в этом случае гораздо сложнее обеспечить согласованный доступ отдельных процессов к общим системным таблицам, исключить эффект гонок и прочие нежелательные последствия асинхронного выполнения работ.
3. Операционные системы для мэйнфреймов. Эти компьютеры размером с комнату все еще можно встретить в центрах данных больших корпораций. Мэйнфреймы отличаются от персональных компьютеров по своим возможностям ввода-вывода. Довольно часто встречаются мэйнфреймы с тысячью дисков и терабайтами данных, а персональный компьютер с такими параметрами показался бы действительно необычным. Мэйнфреймы возвращаются в виде мощных WEB-серверов, серверов для крупномасштабных электронно-коммерческих сайтов и серверов для транзакций в бизнесе.
Операционные системы для мэйнфреймов в основном ориентированы на обработку множества одновременных заданий по операциям ввода-вывода. Примером операционной системы для мэйнфрейма является 0S/390, произошедшая от 0S/360.
4. Другие требования предъявляются к операционным системам кластеров. Кластер - слабо связанная совокупность нескольких вычислительных систем, работающих совместно для выполнения общих приложений и представляющихся пользователю единой системой. Наряду со специальной аппаратурой для функционирования кластерных систем, необходима и программная поддержка со стороны операционной системы, которая сводится в основном к синхронизации доступа к разделяемым ресурсам, обнаружению отказов и динамической реконфигурации системы.
5.4 Операционные системы для мобильных устройств
Следует понимать, что на сегодняшний день рынок мобильных устройств, а следовательно и операционных систем для них (равно как и мобильных приложений), - самый быстроразвивающийся среди высокотехнологичных рынков. Поэтому рейтинг тех или иных мобильных ОС может меняться.
1. Symbian OS
Была самой популярной ОС для мобильных устройств благодаря поддержке фирмы Nokia. Важную роль также сыграло то, что система имеет небольшой размер, а также то, что графический интерфейс и ядро системы отделены друг от друга. Это позволило легко портировать ее для различных мобильных устройств. Позднее была добавлена многозадачность.
Каждый разработчик создавал свой дистрибутив этой операционной системы в зависимости от ограничений аппаратной платформы, под которую она разрабатывалась. Так появились версии Series 60, Series 80, Series 90, UIQ и MOAP. Каждая версия обладала своими особенностями, что делало необходимым под каждую версию разрабатывать свои приложения. Это было неудобно, поэтому после появления Windows Mobile, Android и iPhoneOS утратила свою популярность среди производителей мобильных девайсов. Так, в этом году компании Sony Ericsson и Samsung объявили, что не будут больше поддерживать эту операционную систему. На данный момент из крупных производителей мобильных девайсов только компания Nokia использует эту ОС для своих смартфонов.
Достоинства:
• низкие требования к памяти и процессору;
• функция освобождения неиспользуемой памяти;
• стабильность;
• малое количество вирусов для этой платформы;
• быстро выходят новые версии и исправляются нестабильности;
• большое количество программ.
Недостатки:
• для связи с ПК нужно устанавливать дополнительный софт;
• несовместимость программ для старых и новых версий.
2. Windows Mobile
Эта операционная система разработана компанией Microsoft. Эта система использует такой же программный интерфейс, что и настольная версия. Это делает написание программ более знакомым, а пользователям нравится удобный и понятный интерфейс, знакомый им с настольной Windows. Windows Mobile является компонентной, многозадачной, многопоточной и многоплатформенной операционной системой. Благодаря этому она снискала широкое распространение на мобильных устройствах.
Достоинства:
• схожесть с настольной версией;
• удобная синхронизация;
• в комплекте идут офисные программы;
• многозадачность.
Недостатки:
• высокие требования к оборудованию,
• наличие большого числа вирусов,
• нестабильность в работе.
3. Android
Это одна из ОС, основанная на базе операционной системы Linux и разрабатываемая Open Handset Alliance (OHA) при поддержке Google. Исходный код находится в открытом доступе, благодаря чему любой разработчик может создать свою версию этой мобильной ОС. Разработчикам приложений выдвинуто небольшое количество ограничений, благодаря чему существует множество как платных, так и бесплатных приложений, которые можно удобно загрузить с Android Market.
Достоинства:
• гибкость;
• открытые исходные коды;
• множество программ;
• высокое быстродействие;
• удобное взаимодействие с сервисами от Google;
• многозадачность.
Недостатки:
• множество актуальных версий - для многих устройств новая версия входит слишком поздно или не появляется вовсе, поэтому разработчикам приходится разрабатывать приложения, ориентируясь на более старые версии;
• высокая предрасположенность к хакерским атакам из-за открытости кода;
• почти всегда требует доработок.
4. iOS
Мобильная операционная система от компании Apple. Данная система получила распространение только на продуктах компании Apple. Применяется в iPhone, iPod, iPad а также телевизионной приставке AppleTV.
Достоинства:
• удобное использование;
• качественная служба поддержки;
• регулярные обновления, устраняющие многие проблемы в работе;
• возможность купить в App Store множество различных программ.
Недостатки:
• заблокированный характер ОС;
• отсутствие многозадачности;
• нет встроенного редактора документов.
5. Palm OS
Данная операционная система появилась в 1996 году. Применялась в КПК. Была очень распространена из-за широких возможностей и удобства пользователей. К настоящему моменту практически не применяется, но недавно разработчика поглотила компания HP. Благодаря этому появились надежды на воскрешение некогда популярной КПК ОС.
Достоинства:
• не требовательна к ресурсам;
• очень удобный интерфейс пользователя;
• удобная синхронизация с ПК;
• надежность.
Недостатки:
• отсутствует полноценная многозадачность;
• не развиты мультимедийные функции;
• система не развивается (хотя возможно компания HP сможет это преодолеть).
6. BlackBerry OS
Операционная система работает исключительно на устройствах, выпускаемых компанией Research In Motion Limited (RIM). Ориентирована на корпоративных пользователей. Свое название получила от смартфонов, для которых создавалась. Смартфоны с этой операционной системой получили распространение в корпоративной среде, благодаря сложности перехвата сообщений.
Достоинства:
• удобное пользование электронной почтой;
• легкая синхронизация с ПК;
• широкие возможности настроек безопасности.
Недостатки:
• оптимизирована для вывода только текстовой информации;
• не очень удобный браузер.
Технические характеристики устройства отнюдь не главный параметр при выборе мобильного устройства.
Самые маленькие операционные системы работают на смарт- картах, представляющих собой устройство размером с кредитную карту, содержащее центральный процессор. На такие операционные системы накладываются крайне жесткие ограничения по мощности процессора и памяти. Некоторые из них могут управлять только одной операцией, например электронным платежом, но другие операционные системы на тех же самых смарт-картах выполняют сложные функции. Зачастую они являются патентованными системами.
Некоторые смарт-карты являются Java-ориентированными. Это означает, что ПЗУ (ROM, Read Only Memory - память только для чтения) смарт-карт содержит интерпретатор виртуальной машины Java (Java Virtual Mashine). Апплеты Java (маленькие программы) загружаются на карту и выполняются JVM-интерпретатором. Некоторые из таких карт могут одновременно управлять несколькими апплетами Java, что приводит к многозадачности и необходимости планирования. Из-за одновременной работы двух и более программ возникает необходимость в управлении ресурсами и защитой. Соответственно, все эти задачи выполняет обычно крайне примитивная операционная система, находящаяся на смарт-карте.
Серверы представляют собой либо очень большие персональные компьютеры, либо рабочие станции, или даже мэйнфреймы. ОС, работающие на них, одновременно обслуживают множество пользователей и позволяют делить между собой программные и аппаратные ресурсы. Серверы предоставляют возможность работы с печатающими устройствами, файлами или в сети Интернет. Интернет-провайдеры обычно запускают в работу несколько серверов для того, чтобы поддерживать одновременный доступ к сети множества клиентов.
5.5 Особенности областей использования
Многозадачные ОС подразделяются на три типа в соответствии с использованными при их разработке критериями эффективности:
• системы пакетной обработки (например, OC EC);
• системы разделения времени (UNIX, VMS);
• системы реального времени (QNX, RT/11).
Системы пакетной обработки предназначаются для решения задач в основном вычислительного характера, не требующих быстрого получения результатов. Главной целью и критерием эффективности систем пакетной обработки является максимальная пропускная способность, то есть решение максимального числа задач в единицу времени. Для достижения этой цели в системах пакетной обработки используются следующая схема функционирования: в начале работы формируется пакет заданий, каждое задание содержит требование к системным ресурсам; из этого пакета заданий формируется мультипрограммная смесь, то есть множество одновременно выполняемых задач. Для одновременного выполнения выбираются задачи, предъявляющие отличающиеся требования к ресурсам, так, чтобы обеспечивалась сбалансированная загрузка всех устройств вычислительной машины; так, например, в мультипрограммной смеси желательно одновременное присутствие вычислительных задач и задач с интенсивным вводом-выводом. Таким образом, выбор нового задания из пакета заданий зависит от внутренней ситуации, складывающейся в системе, то есть выбирается «выгодное» задание. Следовательно, в таких ОС невозможно гарантировать выполнение того или иного задания в течение определенного периода времени. В системах пакетной обработки переключение процессора с выполнения одной задачи на выполнение другой происходит только в случае, если активная задача сама отказывается от процессора, например, из-за необходимости выполнить операцию ввода-вывода. Поэтому одна задача может надолго занять процессор, что делает невозможным выполнение интерактивных задач. Таким образом, взаимодействие пользователя с вычислительной машиной, на которой установлена система пакетной обработки, сводится к тому, что он приносит задание, отдает его диспетчеру-оператору, а в конце дня после выполнения всего пакета заданий получает результат. Очевидно, что такой порядок снижает эффективность работы пользователя.
Системы разделения времени призваны исправить основной недостаток систем пакетной обработки - изоляцию пользователя-програм- миста от процесса выполнения его задач. Каждому пользователю системы разделения времени предоставляется терминал, с которого он может вести диалог со своей программой. Так как в системах разделения времени каждой задаче выделяется только квант процессорного времени, ни одна задача не занимает процессор надолго и время ответа оказывается приемлемым. Если квант выбран достаточно небольшим, то у всех пользователей, одновременно работающих на одной и той же машине, складывается впечатление, что каждый из них единолично использует машину. Ясно, что системы разделения времени обладают меньшей пропускной способностью, чем системы пакетной обработки, так как на выполнение принимается каждая запущенная пользователем задача, а не та, которая «выгодна» системе, и кроме того, имеются накладные расходы вычислительной мощности на более частое переключение процессора с задачи на задачу. Критерием эффективности систем разделения времени является не максимальная пропускная способность, а удобство и эффективность работы пользователя.
Системы реального времени применяются для управления различными техническими объектами, такими, например, как станок, спутник, научная экспериментальная установка или технологические процессы, такими, как гальваническая линия, доменный процесс и т.п. Во всех этих случаях существует предельно допустимое время, в течение которого должна быть выполнена та или иная программа, управляющая объектом, в противном случае может произойти авария: спутник выйдет из зоны видимости, экспериментальные данные, поступающие с датчиков, будут потеряны, толщина гальванического покрытия не будет соответствовать норме. Таким образом, критерием эффективности для систем реального времени является их способность выдерживать заранее заданные интервалы времени между запуском программы и получением результата (управляющего воздействия). Это время называется временем реакции системы, а соответствующее свойство системы - реактивностью. Для этих систем мультипрограммная смесь представляет собой фиксированный набор заранее разработанных программ, а выбор программы на выполнение осуществляется исходя из текущего состояния объекта или в соответствии с расписанием плановых работ.
Некоторые операционные системы могут совмещать в себе свойства систем разных типов, например, часть задач может выполняться в режиме пакетной обработки, а часть - в режиме реального времени или в режиме разделения времени. В таких случаях режим пакетной обработки часто называют фоновым режимом.
5.6 Особенности методов построения ОС
При описании операционной системы часто указываются особенности ее структурной организации и основные концепции, положенные в ее основу.
К таким базовым концепциям относятся:
1. Способы построения ядра системы
Монолитное ядро или микроядерный подход. Большинство ОС использует монолитное ядро, которое компонуется как одна программа, работающая в привилегированном режиме и использующая быстрые переходы с одной процедуры на другую, не требующие переключения из привилегированного режима в пользовательский, и наоборот. Альтернативой является построение ОС на базе микроядра, работающего также в привилегированном режиме и выполняющего только минимум функций по управлению аппаратурой, в то время как функции ОС более высокого уровня выполняют специализированные компоненты ОС - серверы, работающие в пользовательском режиме. При таком построении ОС работает более медленно, так как часто выполняются переходы между привилегированным режимом и пользовательским, зато система получается более гибкой: ее функции можно наращивать, модифицировать или сужать, добавляя, модифицируя или исключая серверы пользовательского режима. Кроме того, серверы хорошо защищены друг от друга, как и любые пользовательские процессы.
Построение ОС на базе объектно ориентированного подхода дает возможность использовать все его достоинства, хорошо зарекомендовавшие себя на уровне приложений, внутри операционной системы, а именно: аккумуляцию удачных решений в форме стандартных объектов, возможность создания новых объектов на базе имеющихся с помощью механизма наследования, хорошую защиту данных за счет их инкапсуляции во внутренние структуры объекта, что делает данные недоступными для несанкционированного использования извне, структурированность системы, состоящей из набора хорошо определенных объектов.
Наличие нескольких прикладных сред дает возможность в рамках одной ОС одновременно выполнять приложения, разработанные для нескольких ОС. Многие современные операционные системы поддерживают одновременно прикладные среды MS-DOS, Windows, UNIX (POSIX), OS/2 или хотя бы некоторого подмножества из этого популярного набора. Концепция множественных прикладных сред наиболее просто реализуется в ОС на базе микроядра, над которым работают различные серверы, часть которых реализуют прикладную среду той или иной операционной системы.
Распределенная организация операционной системы позволяет упростить работу пользователей и программистов в сетевых средах. В распределенной ОС реализованы механизмы, которые дают возможность пользователю представлять и воспринимать сеть в виде традиционного однопроцессорного компьютера. Характерными признаками распределенной организации ОС являются: наличие единой справочной службы разделяемых ресурсов, единой службы времени, использование механизма вызова удаленных процедур (RPC) для прозрачного распределения программных процедур по машинам, многонитевой обработки, позволяющей распараллеливать вычисления в рамках одной задачи и выполнять эту задачу сразу на нескольких компьютерах сети, а также наличие других распределенных служб.
2. Подсистема управления процессами
Важнейшей частью операционной системы, непосредственно влияющей на функционирование вычислительной машины, является подсистема управления процессами.
Процесс (или по-другому, задача) - абстракция, описывающая выполняющуюся программу. Для операционной системы процесс представляет собой единицу работы, заявку на потребление системных ресурсов. Подсистема управления процессами планирует выполнение процессов, то есть распределяет процессорное время между несколькими одновременно существующими в системе процессами, а также занимается созданием и уничтожением процессов, обеспечивает процессы необходимыми системными ресурсами, поддерживает взаимодействие между процессами.
Некоторые из ресурсов выделяются процессу при его создании, а некоторые - динамически по запросам во время выполнения. Ресурсы могут быть приписаны процессу на все время его жизни или только на определенный период. При выполнении этих функций подсистема управления процессами взаимодействует с другими подсистемами ОС, ответственными за управление ресурсами, такими как подсистема управления памятью, подсистема ввода-вывода, файловая система. Когда в системе одновременно выполняется несколько независимых задач, то возникают дополнительные проблемы. Хотя процессы возникают и выполняются асинхронно, у них может возникнуть необходимость во взаимодействии, например при обмене данными. Согласование скоростей процессов также очень важно для предотвращения эффекта «гонок» - когда несколько процессов пытаются изменить один и тот же файл - взаимных блокировок или других коллизий, которые возникают при совместном использовании ресурсов. Синхронизация процессов является одной из важных функций подсистемы управления процессами.
Дата добавления: 2016-03-20; просмотров: 420;