рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Компьютерные сети

Компьютерные сети - раздел Образование, ОПЕРАЦИОННЫЕ СИСТЕМЫ Развитие Терминальных Комплексов Положило Основу Развития Компьютерных Сетей....

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

Компьютерная сеть — это объединение компьютеров (или вычислительных систем), взаимодействующих через коммуникационную среду (Рис. 57).

Коммуникационная среда — каналы и средства передачи данных.

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

Рис. 57. Компьютерные сети.

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

Следующее свойство — расширяемость. Компьютерная сеть должна обеспечивать возможность развития по протяженности, по расширению пропускной способности канала, по составу и производительности компонентов сети.

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

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

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

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

К достоинствам данных сетей можно отнести следующие свойства:

- канал находится всегда в состоянии готовности;

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

- обмены происходят порциями данных произвольной длины — сообщениями — что ведет к уменьшению накладных расходов по передаче информации;

- детерминированная пропускная способность сети.

Среди недостатков данной модели можно отметить следующие:

- дороговизна: любой выделенный канал требует больших материальных затрат;

- наличие высокой избыточности в сети: должно быть либо много каналов, чтобы не было коллизий, либо в сети будут коллизии. При этом период ожидания свободного канала недетерминирован;

- неэффективность использования коммутационного канала: в отдельно взятом сеансе может быть низкая интенсивность обменов сообщениями;

- при отказах и сбоях повторение переданной информации является сложной задачей.

Сети коммутации сообщений — это сети, которые оперируют термином «передача сообщения», а не «сеанс связи», т.е. один абонент другому отправляет сообщение. Выделение канала для передачи каждого сообщения происходит поэтапно от одного узла к другому. На каждом узле на пути следования принимается решение, свободен ли канал к следующему узлу. Если свободен, то сообщение передается далее, иначе происходит ожидание освобождения канала. К достоинствам и недостаткам данной модели можно отнести:

- отсутствие выделенного канала и, соответственно, занятости ресурса коммутируемого канала на неопределенный промежуток времени, т.е. устранена деградация системы, возникающая при организации сетей коммутации каналов;

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

- обеспечение буферизации требует дорогостоящего коммутационного оборудования;

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

Модель сети коммутации пакетов строится на предположении, что в основе лежит сеть, использующая ненадежные средства связи. Функционирования данной сети состоит в следующем: любое сообщение дробится на блоки фиксированной длины, которые называются пакетами. Соответственно, на стороне отправителя происходит разбиение сообщения на пакеты, а на стороне получателя — сборка. Любой пакет помимо непосредственно самого сообщения (или его части) имеет служебную информацию (которая обычно представлена в заголовке пакета), обеспечивающую внутреннюю целостность пакета (контрольная сумма пакета и пр.), адресную составляющую (данные об отправителе и адресате), а также информацию для сборки.

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

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

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

1.2.10 Организация сетевого взаимодействия. Эталонная модель ISO/OSI

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

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

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

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

Развитие сетей определило массовость их использования. Возникла необходимость создания сетей, которые могли бы достаточно прочно расширяться без привлечения существенных переделок, модернизироваться, в которых могли бы меняться ПО, добавляться новые службы. В связи с этим появился целый спектр моделей организации сетей (т.н. «открытых» сетей), в основе которых используется модель системы открытых интерфейсов (OSI — Open Systems Interconnection), предложенная Международной организацией по стандартизации (ISO — International Organization for Standardization). Эта модель ISO/OSI рассматривает сеть и взаимодействие компьютеров в сети в виде семи функциональных уровней. Стоит отметить, что данная модель является рекомендацией, а не стандартом: ISO выделила их на основе анализа исторического развития компьютерных сетей (Рис. 58).

Рис. 58. Модель организации взаимодействия в сети ISO/OSI.

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

Физический уровень. На этом уровне происходит непосредственно передача неструктурированной двоичной информации. Для передачи используется конкретная физическая среда (кабель, радиоволны и т.п.). На данном уровне обеспечивается стандартизация сигналов и соединений.

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

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

Транспортный уровень. На данном уровне обеспечивается корректная транспортировка данных, а также программное взаимодействие (а не взаимодействие устройств). Тут же принимается решение о выборе типа услуг (транспортировка данных с установлением виртуального канала или же без оного). В случае установления виртуального канала осуществляется контроль за доставкой и отсутствием ошибок. Если же виртуальный канал не устанавливается, то уровень не несет ответственности за доставку.

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

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

Уровень прикладных программ. На этом уровне формализуются правила по взаимодействию с прикладными системами.

Теперь на основе рассмотренных уровней можно дать определения основных понятий (Рис. 59).

Рис. 59. Логическое взаимодействие сетевых устройств по i-ому протоколу.

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

Интерфейс — правила взаимодействия вышестоящего уровня с нижестоящим.

Служба или сервис — набор операций, предоставляемых нижестоящим уровнем вышестоящему.

Стек протоколов — перечень разноуровневых протоколов, реализованных в системе. Стек может быть произвольной глубины, т.е. в нем, возможно, не будут представлены протоколы некоторых уровней модели ISO/OSI.

1.2.11 Семейство протоколов TCP/IP. Соответствие модели ISO/OSI

Рассмотрим еще одну модель организации сетевого взаимодействия — семейство протоколов TCP/IP (Рис. 60). Это классическая четырехуровневая модель организации сетевого взаимодействия. Протоколы семейства TCP/IP основаны на сети коммутации пакетов. Изначально данные протоколы были разработаны как стандарт военных протоколов министерства обороны США в агентстве перспективных разработок МО США DARPA. Это агентство разработало сеть ARPA-net, которая в своем развитии легла в основу современной сети Internet (поскольку это семейство протоколов было интегрировано в ОС BSD Unix).

Рис. 60. Семейство протоколов TCP/IP.

Попытаемся сопоставить модели TCP/IP и ISO/OSI.

Уровень доступа к сети. Этот уровень соответствует физическому и канальному уровням модели ISO/OSI. На нем решаются проблемы сетевого адаптера, драйвера сетевого адаптера и проблемы среды передачи данных.

Межсетевой уровень (или internet-уровень). В некотором смысле ему соответствует сетевой уровень модели ISO/OSI. Т.е. на этом уровне решаются проблемы адресации и маршрутизации по сети.

Транспортный уровень. Он покрывает сеансовый и транспортный уровни модели ISO/OSI. На этом уровне имеется возможность использования протоколов, которые устанавливают виртуальное соединение или не устанавливают его.

Уровень прикладных программ. Он разрешает проблемы уровня представления и уровня прикладных программ модели ISO/OSI.

Эти уровни модели TCP/IP являются пакетными: на каждом уровне система оперирует порциями данных, обладающими характеристиками соответствующего уровня (Рис. 61). Имея содержательную информацию на прикладном уровне, двигаясь от верхнего уровня модели к нижнему, эта информация при необходимости дробится на пакеты фиксированного размера, и к каждому из них добавляется заголовочная информация.

Рис. 61. Взаимодействие между уровнями протоколов TCP/IP.

Остановимся на каждом из уровней модели TCP/IP более подробно.

На уровне доступа к сети протоколы обеспечивают систему средствами для передачи данных другим устройствам в сети. В качестве примера можно привести протокол Ethernet, являющегося разработкой исследовательского центра компании Xerox (1976 г.), который основывается на единой шине (это широковещательная сеть). Для сетевых устройств обеспечивается множественный доступ с контролем несущей и обнаружением конфликтов (Carrier Sense Multiple Access with Collision Detection — CSMA/CD). Термины широковещательный и множественный доступ означают, что любой пакет, «выкинутый» в сеть, виден всем абонентам этой сети. Каждый абонент «слушает» сеть, и тот, кому предназначен пакет, забирает его. Контроль несущей означает, что каждый абонент, «слушая» сеть, распознает, свободна она или занята. Как только сеть становится свободной, устройство может «закидывать» очередную порцию данных. При этом устройство «слушает» как свою передачу, так и передачи других абонентов. «Бросая» в сеть, устройство способно распознать искажения, которые означают, что какое-то еще устройство также пытается послать данные в сеть. В этом случае обычно реализуется следующая стратегия: оба абонента прекращают вещание и берут тайм-аут на некоторый случайный промежуток времени (чтобы минимизировать повторные коллизии), а затем повторяют свои попытки. Данная сеть обладает типичными недостатками широковещательной сети: при интенсивной работе часто возникает ситуация, когда линия занята. Также при интенсивной работе возрастает частота конфликтов, что ведет к снижению производительности системы.

В качестве физической среды передачи данных используются самые разные источники: это может быть «толстый» Ethernet, «тонкий» Ethernet, витая пара, оптоволокно, радиосигнал.

Межсетевой[R10] уровень. Протокол IP — это один из основных протоколов. Данный протокол реализует следующие функции:

- формирование дейтаграмм;

- поддержание системы адресации;

- обмен данными между транспортным уровнем и уровнем доступа к сети;

- организация маршрутизации дейтаграмм;

- разбиение и обратная сборка дейтаграмм.

Основная функция этого протокола — поддержание системы адресации, позволяющей объединять различные (или гетерогенные) сети в единое целое (т.е. это межсетевая адресация — internet-адресация), а также поддержание маршрутизации. IP-адрес — это 32-разрядное число, которое кодирует информацию о конкретной сети и компьютере внутри этой сети. Имеются три категории содержательных IP-адресов сетей (Рис. 62).

Рис. 62. Система адресации протокола IP.

Формат класса A позволяет задавать адреса до 126 сетей с 16 млн. хостов в каждой, класса B — до 16382 сетей с 64 Кбайт хостами, и, наконец, класса C — 2 млн. сетей с 254 хостами в каждой. Формат класса D предназначен для многоадресной рассылки. Остальные адреса используются для служебных целей. Отметим, что на сегодняшний момент в мире складывается ситуация, когда 32-битных IP-адресов не хватает, и ведутся разработки по использованию более длинной адресации.

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

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

Перед межсетевым уровнем также стоит задача маршрутизации— определить по имеющему IP-адресу получателя определить маршрут следования пакета. Эта задача распадается на две подзадачи. Первая подзадача — это проблема организации адресации в локальной сети, в рамках которой происходит взаимодействие. И здесь особых сложностей не возникает, поскольку специфика межсетевого уровня позволяет относительно просто организовать взаимодействие машин в рамках одной локальной сети. Вторая подзадача — это организация адресации между различными сетями. Для решения этой задачи используются шлюзы, которые одновременно принадлежат разным сетям, а также маршрутизаторы, которые решают задачу, через какой шлюз необходимо отправить пакет. Отметим, что стек протоколов TCP/IP позволяет совмещать компьютерам несколько функций: одна и та же машина может быть одновременно и шлюзом, и маршрутизатором, и хостом, причем работающий за ним пользователь может не догадываться об организации локальной сети, в которой он работает.

Рассмотрим пример (Рис. 63). Пускай необходимо послать сообщение от машины A1 машине A2. Машина A1 находится в сети A, а машина A2 — в сети C, причем сеть A соединена лишь с сетью B посредством шлюза G1, а сеть C соединена также лишь с сетью B, но посредством шлюза G2. Соответственно, маршрутизатор должен учитывать эти особенности при решении задачи маршрутизации. Обратим ваше внимание, что на компьютерных шлюзах реализовано только два уровня протоколов, поскольку для решения задачи транспортировки пакетов из одной сети в другую достаточны лишь наличие этих двух уровней.

Рис. 63. Маршрутизация дейтаграмм.

Транспортный уровень. Одним из важнейших протоколов данного уровня является протокол TCP (Transmission Control Protocol — протокол управления передачей данных), который, равно как и протокол IP, дал свое название всему семейству протоколов. Этот протокол послужил некоторым «прародителем» этого семейства протоколов, поскольку Министерство Обороны США, когда начинало исследование ARPA-NET, ставило перед собой задачу разработку сети, устойчивой к недетерминированной физической среде передачи данных. И одним из условий было, чтобы полученная сеть работала корректно как на линиях с устойчивой передачей данных (в которых количество ошибок мало), так и на линиях, в которых возникает большое число ошибок. Это требование и его реализация обусловило распространение семейства протоколов TCP/IP и, в общем-то, развитие современных сетей, поскольку проблема дисбаланс различных сетей с точки зрения надежности каналов актуальна и по сей день, а разработанные протоколы решали эту проблему.

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

Некоторой альтернативой служит протокол UDP (User Datagram Protocol — протокол пользовательских дейтаграмм). Данный протокол подразумевает отправку пакетов по сети без гарантии их доставки (он выбрасывает пакет и сразу же «забывает» о нем).

Уровень прикладных программ. На этом уровне находятся протоколы, часть которых опираются на протокол TCP, а часть — на UDP.

Протоколы, которые основываются на принципах работы протокола TCP, обеспечивают доступ и работу с заведомо корректной информацией, причем именно в среде межсетевого взаимодействия (internet), и эти протоколы требуют корректной доставки. В частности, это протокол TELNET (Network Terminal Protocol) — прикладной протокол, эмулирующий терминальное устройство; протокол перемещения файлов FTP (File Transfer Protocol); протокол передачи почтовых сообщений SMTP (Simple Mail Transfer Protocol).

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

Часть подобных протоколов действуют в рамках локальной сети. В частности, в большинстве случаев протокол NFS (Network File System) сетевой файловой системы функционирует именно в рамках локальной сети, и очень редко его запускают в межсетевом режиме.

Другая часть протоколов должны контролироваться, с одной стороны, на прикладном уровне, а с другой стороны, они предполагают обмен очень небольшими порциями данных. К таким протоколам относится DNS (Domain Name Service), который позволяет мнемоническим способом именовать сетевые устройства. В частности, этот протокол осуществляет преобразования IP-адресов в доменные имена и обратно.

– Конец работы –

Эта тема принадлежит разделу:

ОПЕРАЦИОННЫЕ СИСТЕМЫ

Факультет вычислительной математики и кибернетики... Курынин Р В Машечкин И В Терехин А Н... ОПЕРАЦИОННЫЕ СИСТЕМЫ...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Компьютерные сети

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

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

Структура ВС
Традиционным представлением структуры вычислительной системы является пирамида (Рис. 4). Каждый из уровней пирамиды определяет свой уровень абстракции свойств вычислительной системы. Основанием явл

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

Управление физическими ресурсами ВС
Уровень управления физическими ресурсами — это первый уровень системного программного обеспечения вычислительной системы. Его назначение — систематизация и стандартизация правил пр

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

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

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

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

Оперативное запоминающее устройство
Оперативное запоминающее устройство (RAM — Random-Access Memory) — это устройство хранения данных компьютера, в котором находится исполняемая в данный момент программа. ОЗУ еще называют основной па

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

Регистровая память
Регистровый файл (register file), или регистровая память, — совокупность устройств памяти процессора — т.н. регистров, предназначенных для временного хр

Устройство управления. Арифметико-логическое устройство
Устройство управления (control unit) — устройство, которое координирует выполнение команд программы процессором. Арифметико-логическое устройство (arithmetic/logic

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

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

Внешние устройства
Внешние[R6] устройства во многом определяют эксплуатационные характеристики как компьютера, так и вычислительной системы в целом. Размер экрана монитора, объем и производительность магнитных дисков

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

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

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

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

Аппаратная поддержка операционной системы и систем программирования
Если[R7] мы обратим свое внимание на рассмотрение компьютеров первого поколения, то это были компьютеры (computer — вычислитель) в прямом смысле слова, т.е. производители первых компь

Требования к аппаратуре для поддержки мультипрограммного режима
Выше уже речь уже шла о мультипрограммном режиме, когда в обработке могут находиться две и более программы пользователей, и каждая из этих программ может находиться в одном из трех

Проблемы, возникающие при исполнении программ
Рассмотрим круг проблем, которые, так или иначе, возникают при исполнении программ. Вложенные обращения к подпрограммам (Рис. 44). Несколько лет назад проводились исследов

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

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

Виртуальная память
Следующий аппарат компьютера, который также сильно связан с поддержкой программного обеспечения, — это аппарат виртуальной памяти. Что понимается под виртуальной памятью и в

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

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

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

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

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

Типы операционных систем
Операционные системы можно классифицировать с точки зрения критериев эффективности и стратегий использования центрального процессора. Можно выделить три основных класса операционных систем:

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

Модели операционных систем
Ниже будем рассматривать некоторую модельную операционную систему. Будем считать, что этапы жизненного цикла процесса разделены на два блока. Первый блок — это размещение процесса,

Типы процессов
Рассматривая процесс в той или иной операционной системе, можно обнаружить, что встречается деление процессов на две категории: т.н. полновесные процессы и легков

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

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

Базовые средства управления процессами в ОС Unix
Рассмотрим[R12] теперь, что происходит при обращении к системному вызову fork(). При обращении процесса к данному системному вызову операционная система создает копию текущего процесса, т.е.

Жизненный цикл процесса. Состояния процесса
Рассмотрим обобщенную и несколько упрощенную схему жизненного цикла процессов в ОС Unix (Рис. 79). Можно выделить целую совокупность состояний, в которых может находиться процесс.

Формирование процессов 0 и 1
Все механизмы взаимодействия процессов в ОС Unix унифицированы и основываются на связке системных вызовов fork-exec. Абсолютно все процесс в ОС Unix создается по приведенной схеме, но сущест

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

Базовые средства реализации взаимодействия процессов в ОС Unix
Сразу[R16] необходимо отметить, что во всех иллюстрациях организаций взаимодействия процессов будем рассматривать полновесные процессы, т.е. те «классические» процессы, которые представляются в вид

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

Неименованные каналы
Неименованный[R17] канал (или программный канал) представляется в виде области памяти на внешнем запоминающем устройстве, управ

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

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

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

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

Структурная организация файлов
С точки зрения структурной организации файлов имеется целый спектр различных подходов. Существует некоторая установившаяся систематизация методов структурной организации файлов. Рассмотрим модели в

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

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

Подходы в практической реализации файловой системы
Рассмотрим[R28] некоторые подходы в практической реализации файловой системы. Снова вернемся к понятию системного устройства — устройства, на котором, как считается аппарату

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

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

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

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

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

Надежность файловой системы
Понятие надежности файловой системы включает в себя множество требований, среди которых, в первую очередь, можно выделить то, что системные данные файловой системы должны обладать избыточной информ

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

Организация файловой системы ОС Unix. Виды файлов. Права доступа
Файл ОС Unix — это специальным образом именованный набор данных, размещенных в файловой системе. Файлы ОС Unix могут быть разных типов: - обычный файл

Логическая структура каталогов
Одной[R31] из характеристик ОС Unix является характеристика, кажущаяся на первый взгляд достаточно странной: система рекомендует размещать системную и пользовательскую информацию по некоторым прави

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

Работа с массивом свободных индексных дескрипторов
Массив номеров свободных индексных дескрипторов — это массив фиксированного количества элементов. Изначально данный массив заполнен номерами свободных индексных дескрипторов. Если происход

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

Файл-каталог
Каталог файловой системы версии System V — это файл специального типа, его содержимое так же, как и у регулярных файлов, находится в рабочем пространстве файловой системы и по

Достоинства и недостатки файловой системы модели System V
Среди достоинств рассматриваемой файловой системы стоит отметить, что данная система является иерархичной. Также надо отметить, что за счет использования системного кэширования опт

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

Внутренняя организация блоков
Размер блока в файловой системе FFS может варьироваться в достаточно широком диапазоне: предельный размер блока — 64 Кбайт. Как отмечалось выше, проблема выбора оптимального размера блока достаточн

Выделение пространства для файла
Рассмотрим алгоритм выделения пространства для файлов на следующем примере. Будем считать, что блок файловой системы поделен на 4 фрагмента. Пускай в системе хранятся файлы petya.txt и vasya.txt (Р

Структура каталога FFS
Каталог файловой системы FFS позволяет использовать имена файлов, длиной до 255 символов (Рис. 120). Каталог состоит из записей переменной длины, состоящих из блоков, размером в 4[R33] байта. Начал

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

Управление оперативной памятью
Будем[R35] говорить о функциях управления оперативной памятью в контексте решения следующих основных задач. Во-первых, это осуществление контроля использования ресурса, т.е. одной из функций операт

Одиночное непрерывное распределение
Данная модель распределения оперативной памяти (Рис. 121) является одной из самых простых и основывается на том, что все адресное пространство подразделяется на два компонента. В одной части памяти

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

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

Сегментно-страничное распределение
Естественным развитием рассмотренной модели сегментного распределения памяти стала модель сегментно-страничного распределения. Эта модель рассматривает виртуальный адрес, как номер сегмента и смеще

Архитектура организации управления внешними устройствами
Как[R36] отмечалось ранее, при организации взаимодействия работы процессора и внешних устройств различают два потока информации: поток управляющей информации (т.е. поток команд какому-либо устройст

Программное управление внешними устройствами
Рассмотрим архитектуру программного управления внешними устройствами, которую можно представить в виде некоторой иерархии (Рис. 135). В основании лежит аппаратура, а далее следуют

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

RAID-системы. Уровни RAID
Аббревиатура RAID может раскрываться двумя способами. RAID — Redundant Array of Independent (Inexpensive) Disks, или избыточный массив независимых (недорогих) дисков. На сегодняшний день обе расшиф

Файлы устройств, драйверы
Как[R37] уже неоднократно упоминалось, одной из основных особенностей ОС Unix является концепция файлов: практически все, с чем работает система, представляется в виде файлов. Внешние устройства не

Системные таблицы драйверов устройств
Для регистрации драйверов в системе используются две системные таблицы: таблицы блок-ориентированных устройств — bdevsw, и таблица байт-ориентированных устройств — cdevsw

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

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

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

Буферизация при блок-ориентированном обмене
Одним из достоинств ОС Unix является организация многоуровневой буферизации при выполнении неэффективных действий[R40] . В частности, для организации блок-ориентированных обменов система использует

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

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги