Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2_teoria.doc
Скачиваний:
2
Добавлен:
25.09.2019
Размер:
687.62 Кб
Скачать

Очереди сообщений

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

  • msgget для образования новой очереди сообщений или получения дескриптора существующей очереди;

  • msgsnd для посылки сообщения (вернее, для его постановки в указанную очередь сообщений);

  • msgrcv для приема сообщения (вернее, для выборки сообщения из очереди сообщений);

  • msgctl для выполнения ряда управляющих действий.

Системный вызов msgget обладает стандартным для семейства "get" системных вызовов синтаксисом:

msgqid = msgget(key, flag);

Ядро хранит сообщения в виде связного списка (очереди), а дескриптор очереди сообщений является индексом в массиве заголовков очередей сообщений. В дополнение к информации, общей для всех механизмов IPC в UNIX System V, в заголовке очереди хранятся также:

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

  • число сообщений и общее количество байтов данных во всех них вместе взятых;

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

  • временные метки последних выполненных операций msgsnd, msgrsv и msgctl.

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

Разделяемая память

Для работы с разделяемой памятью используются четыре системных вызова:

  • shmget создает новый сегмент разделяемой памяти или находит существующий сегмент с тем же ключом;

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

  • shmdt отключает от виртуальной памяти ранее подключенный к ней сегмент с указанным виртуальным адресом начала;

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

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

Средства графического интерфейса пользователей

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

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

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

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

22. OS/2. Основные характеристики и возможности. Графический оконный интерфейс. Двусторонняя связь между объектами и значками. Shortcat (ярлык) и Shadow (тень). Быстродействие. Поддержка многопроцессорных систем.

OS/2 - постепенные улучшения

Операционная система OS/2 начиналась как совместная разработка IBM и Microsoft (хотя большую часть работы должна была выполнить Microsoft). Изначально она была задумана как замена DOS. Уже тогда было ясно, что DOS с ее ограничениями по памяти и по возможностям файловой системы не может воспользоваться вычислительной мощностью появляющихся компьютеров. OS/2 была хорошо продуманной системой. Она должна была поддерживать вытесняющую многозадачность, виртуальную память, графический пользовательский интерфейс, виртуальную машину для выполнения DOS-приложений. Фактически она выходила за пределы простой многозадачности с ее концепцией, названной многонитевостью.

Первые версии OS/2 не оказали значительного влияния на рынок. Версия OS/2 1.0, выпущенная в 1987 году, содержала большинство технических свойств, необходимых для многозадачной ОС. Однако у нее не было менеджера графического представления (presentation manager, PM), а также отсутствовали драйверы для многих популярных принтеров и других устройств. Версия OS/2 1.1, появившаяся в 1989 году, включала рудиментарную версию PM, которая, наконец, делала возможным использование графических приложений в нескольких окнах. Однако в этой версии PM не хватало многих свойств, которые присущи развитому графическому интерфейсу, кроме того, по прежнему отсутствовали многие драйверы принтеров. Выпущенная в 1990 году версия 1.2 имела улучшенный PM, хотя он и не следовал общепринятым концепциям графического интерфейса. Появились драйверы для большинства принтеров и других периферийных устройств.

Однако дискредитация OS/2 уже произошла. Версия 1.2 не была существенно лучше предыдущих версий и все еще предъявляла значительные требования к аппаратуре. К этому времени многие пользователи решили перейти на новую платформу Windows 3.0 или подождать, пока не появится что-нибудь принципиально лучшее. Продажи OS/2 по-прежнему были вялыми и рынок не интересовался ею. Это объяснялось наличием у OS/2 ряда существенных недостатков:

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

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

Память в этом режиме использовалась нерационально - если пользователь конфигурировал OS/2 с возможностью DOS-совместимости, то 640 КБ памяти всегда выделялись для этих целей и не могли использоваться для задач OS/2.

Еще одним недостатком было отсутствие возможности обмена данными между DOS- и OS/2-приложениями.

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

В результате для пользователей OS/2 многие популярные DOS-приложения оказались недоступными, а те, что были доступны, не могли вообще взаимодействовать со средой OS/2. Время показало, что для пользователей это обстоятельство оказалось весьма важным, так как многие отказались от покупки OS/2, оставаясь с проверенной, хотя и не очень совершенной DOS.

OS/2 Warp

Общая характеристика

В конце 1994 года IBM выпустила третью главную версию OS/2, которую назвала OS/2 Warp 3 (warp - основа). Его демонстрации и развернутая рекламная компания напоминали рекламную компанию 1992 года, когда была выпущена OS/2 2.0. Во всяком случае один лозунг был точным повторением: в этой системе есть много преимуществ, которые пользователи и корпорации могут извлечь немедленно из 32-х разрядной операционной среды.

OS/2 Warp имеет хорошо продуманный объектно-ориентированный интерфейс с применением техники drug-and-drop при выполнении операций копирования, удаления, печати, а также некоторых других. Перечни свойств объектов легко доступны в меню, вызываемых щелчком правой клавиши мыши. Имеется специальная панель для размещения часто используемых документов или прикладных программ.

В состав OS/2 Warp входит набор утилит BonusPack, который содержит IBM Works - интегрированный программный пакет начального уровня, и Internet Access Kit - самый полный набор средств для сети Internet из всех средств, поставляемых в составе операционных систем, Web Browser и почта Internet Mail. В публикациях встречаются утверждения, что он более совершенен, чем набор для доступа к Internet, реализованный в Windows 95. В феврале 1995 года IBM начала продавать пакет OS/2 Warp 3 Full Pack, который содержит библиотеки Win-OS/2. Эти библиотеки дают возможность выполнять Windows-программы, не приобретая лицензионных копий Microsoft Windows.

Одним из часто критикуемых недостатков OS/2 Warp является то, что она не поддерживает 32-х битные приложения Windows (точнее, она поддерживает API Win32s, но не поддерживает полный API Windows NT, который называется Win32 и который почти полностью поддерживает Windows 95). Однако в ближайшее время этот недостаток не будет критическим, так как приложений Win32 пока немного, зато с приложениями Win16 у OS/2 Warp проблем нет. IBM говорит, что она может обеспечить поддержку приложений Win32, если этого пожелают пользователи.

В то же время в OS/2 Warp ощущается недостаток сетевых функциональных возможностей. Положение должно измениться, так как летом 1995 года IBM начала продавать следующую версию OS/2 - Warp Connect, которая содержит важнейшие драйверы и утилиты. В число новых средств входят редиректоры для операционных систем NetWare 3.х и 4.1 и OS/2 LAN Server. Версия OS/2 Warp Connect работает с протоколами IPX и NetBIOS, а также с новой реализацией протоколов TCP/IP. Этот новый комплект устанавливает двухточечное соединение по протоколу PPP вместо соединений SLIP, предусмотренных в базовом пакете OS/2 Warp. Этот комплект понизит нагрузку на центральный процессор и обеспечит одновременный доступ к локальной сети и сети Internet.

Кроме того, Warp Connect предоставляет давно ожидаемые в OS/2 средства одноранговой сетевой связи. Согласно сообщению фирмы IBM, в эту версию входит большое число собственных драйвером, которые смогут работать более чем с 70% существующих адаптеров Ethernet и более чем с 90% адаптеров Token Ring. То же самое программное обеспечение дает возможность клиенту Warp Connect подключаться в серверу LAN Server 4.0.

Warp Connect содержит также программу Lan Distance фирмы IBM, которая позволит соединяться через связной сервер с любым подключенным к сети устройством. В отличие от Windows 95 ОС Warp Connect не содержит средств, поддерживающих удаленный доступ через коммутируемые телефонные сети. Еще одним нововведением является справочная база данных ASK PSP на компакт-диске с интерфейсом запросов на языке, близком к естественному английскому.

Что касается почтовых услуг, то IBM выбрала для Warp Connect пакет Lotus Notes Express, а не свой собственный Ultimedia Mail/2. Notes Express позволяет соединиться с любым сервером Notes.

Как и другие версии Warp, Warp Connect тоже будет поставляться в двух версиях: одна без Windows-библиотек, другая, подобно Full Pack, с библиотеками Win-OS/2.

23. Системная интеграция. Выбор компьютерной платформы и ОС при построении информационных систем. Обоснование сетевых решений. Технологии «клиент-сервер» в ОС (X-Windows) и базах данных (SQL). Встроенные приложения (embedded systems). Аспекты применения ОС. Человеческий фактор. Компьютерная этика. "Копирайт" и "копилефт". Свободно распространяемое ПО (freeware).

Ответ:

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

максимальное число пользователей одновременно обращающихся к базе;

характеристики клиентского ПО;

аппаратные компоненты сервера;

серверную операционную систему;

уровень квалификации персонала.

14. X-Window System

X-сервер. Программа, которая написана специально под конкретное физическое устройство (имеется в виду - монитор, графконтроллер, мышь клавиатура), умеет на нем рисовать, и умеет понимать команды рисования по протоколу X Windows System.

X-клиент. Прикладная программа, обеспечивающая графический интерфейс с пользователем. Команды для рисования на экране передает X серверу по протоколу X Window System.

X-терминал. Монитор, графконтроллер, мышь, клавиатура, ну и, естественно, процессор и оперативная память, на которых запущена программа X-сервер. X-терминалом может служить самая обыкновенная графическая Unix-рабочая станция, на которой X-сервер выполняется, как одна из многих прикладных задач. Специализированный X-terminal - компьютер, на котором запускается только X-сервер, и ничего кроме. Можно использовать PC под MS-DOSом или MS-Windows, на котором запущена DOSовская программа, реализующая X сервер.

Xlib - библиотека C-ишных функций, реализующих протокол X Windows

System. С помощью этой библиотеки можно писать графические программы - X-клиенты.

Мы получаем универсальный GAPI - (Graphical Application Programming Interface) - средство программирования графических приложений. Пользовательские графические программы при этом полностью отвязаны от железа, от конкретного графконтроллера. О железе пусть беспокоится X-сервер.

Протокол X Window умеет 'ездить' по сети: например по TCP/IP, или по DEC-net. Поэтому X-сервер может крутиться на одной машине, а X-клиент - на другой. То есть, картинка рисуется на одной машине, а программа, которая ее обеспечивает - крутится на другой. X-сервер способен обслуживать сразу много клиентов, причем всех - одновременно. На нашем графическом экране может быть открыто сразу много окон - каждое окно порождается его собственным X-клиентом. Клиенты эти могут быть запущены и на нашей машине (к которой подключена графическая подсистема), и на удаленных машинах, соединеннных с нами по сети. X Window очень любит ресурсы - память, процессор, диск. Способен съесть их в неограниченных количествах. А еще ведь надо программировать. (К счастью, не всем на- до). Кто видел, как выглядят программы для MS Windows или Mac, может представить себе внешний вид исходных текстов X-овой программы.

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

Копилефт

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

Тем не менее, термин ’copyleft’ прочно вошел в оборот. Это связано с появлением компьютерных программ с «открытым кодом». Но обо всем по порядку.

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

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

Так вот, на Западе, не юридическим, разговорным термином ’copyleft’ принято называть те программы, которые получили лицензию, гарантирующую, что программа и любые ее производные всегда будут бесплатными. А также то, что любой человек может абсолютно свободно использовать, изменять и распространять как саму программу, так и ее производные. В общем, ’copyleft’ — это полная свобода, защищенная законом.

Впоследствии термин ’copyleft’ стали применять не только к компьютерным программам, но и к документам, музыкальным и художественным произведениям.

Просуммируем основные выводы, сделанные в данной статье:

  1. Копирайтер / copywriter — это человек, который владеет искусством составления текстов.

  1. Копирайт / copyright — это право на «Copia», право на произведение, право на Текст.

  1. Копилефт / copyleft — это полная свобода, защищенная законом.