Скачать 276.79 Kb.
|
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ Государственное образовательное учреждение высшего профессионального образования Московский государственный институт электроники и математики (Технический университет) Кафедра математического обеспечения систем обработки информации и управления Программирование в операционной среде UNIX: обмен информацией между параллельными процессами, организация защиты файлов в файловой системе, обработка прерываний Методические указания к лабораторным работам по дисциплине «Операционные системы» Специальности: 230401 – Прикладная математика 220101 – Вычислительные машины, комплексы, системы и сети 071900 – Информационные системы и технологии 090102 – Компьютерная безопасность Москва 2009 Составитель канд. техн. наук, проф. А.Ю. Истратов УДК 681.1.5 Программирование в операционной среде UNIX: обмен информацией между параллельными процессами, организация защиты файлов в файловой системе, обработка прерываний. / Моск. гос. ин-т электроники и математики; Сост. –А.Ю. Истратов, 2009г. – с.19 Библиогр.: 5 назв. Рассматриваются вопросы программирования в операционной системе UNIX. Излагаемый материал является общим для всех разновидностей UNIX – систем. Представлена информация о командах ОС UNIX, системных вызовах, среде пользователя. Приведены задания лабораторных работ и примеры выполнения. Для студентов направлений и специальности «Информационные системы и технологии», «Компьютерная безопасность», «Прикладная математика» ???? ISBN 5–93378–087–1 1. КРАТКИЕ СВЕДЕНИЯ ОБ ОПЕРАЦИОННОЙ СИСТЕМЕ UNIX.Операционные системы играют огромную роль в эксплуатации современных ЭВМ. ЭВМ представляют основные ресурсы для решения задачи. Однако, чтобы сделать эти ресурсы более доступными для программиста, требуется детально разработанная программа, называемая операционной системой (ОС). ОС обычно предоставляет средства для разработки и запуска программ на ЭВМ, средства управления пространством памяти ЭВМ, средства доступа к периферийным устройствам ЭВМ и к некоторой файловой системе. Кроме перечисленных выше средств, более сложные ОС могут предоставлять и другие возможности, делающие ЭВМ еще более удобной для использования: одновременный доступ к ЭВМ множества пользователей (разделение времени), средства связи между пользователями, одновременное выполнение множества различных программ (мультизадачность), средства разработки и поддержки файлов, средства, облегчающие разработку программного обеспечения, средства для ввода и обработки текстов и средства защиты. В последние годы широкую известность получила операционная система UNIX, разработанная в начале 70-х годов К. Томпсоном и Р. Ритчи в Bell Telephone Laboratories (США) и первоначально предназначенная для проведения исследовательских работ. Однако, концептуальная целостность системы и целый ряд новых, нетрадиционных и прогрессивных решений, заложенных в нее при создании, показали преимущество ОС UNIX перед другими ОС этого класса, основные из которых следующие:
В нашей стране аналогом ОС UNIX являлась ОС ДЕМОС (ИНМОС). Сначала эта система была ориентирована на ЭВМ класса PDP-11 (СМ ЭВМ, Электроника), а затем перенесена и сферу ЕС ЭВМ, и на персональные компьютеры. В настоящее время на принципах ОС UNIX разработано достаточно большое количество ОС: XENIX, UNIX HP, UNIX SCO, SOLARIS, LINUX, KONIX, FREE BSD и др. Поэтому в дальнейшем под системой UNIX будут подразумеваться любые UNIX-подобные системы. Все работы в системе UNIX представлены множеством конкурирующих процессов. Процесс - потребитель ресурсов, единица работы и управления. Логически, каждый процесс выполняется своим виртуальным процессором в своем виртуальном адресном пространстве. Каждый процесс имеет уникальный номер, называемый идентификатором процесса, который ставится процессу в соответствие при его рождении. Любые обращения к процессу возможны только через его идентификатор. Работа процесса состоит в выполнении некоторого файла - программы, состоящей из трех сегментов: процедурного сегмента, сегмента данных и динамического сегмента. Процедурный сегмент содержит машинные команды и константы, сегмент данных - данные, которые могут изменяться в процессе работы, а динамический сегмент выделяется при загрузке выполняемого файла в основную память и содержит данные, не инициализируемые при компиляции. Логическое взаимодействие между процессами реализуется через механизм сигналов. В UNIX реализован интерфейс для обмена информацией между процессами с дисковыми файлами и внешними устройствами. Это существенно упрощает работу с файлами на пользовательском уровне. Работа с любым внешним устройством с точки зрения пользователя рассматривается как работа с обычным файлом. При этом обмен информацией с любыми файлами осуществляется посредством одних и тех же операций ввода-вывода. Обмен информацией между родственными процессами может выполняться как традиционными методами, через общие файлы, так и с помощью специального средства - программного канала. Исключительно большую роль в UNIX играет файловая система. Она имеет многоуровневую структуру, в которой каждый уровень определяется файлом-каталогом. Такую структуру, с некоторыми оговорками, можно назвать древовидной. Помимо файлов-каталогов в состав файловой системы входят обычные и специальные файлы. Любой файл файловой системы может быть указан его полным именем, в котором перечисляются все каталоги, начиная с корневого, через которые проходит путь к данному файлу. Помимо этого, файл может указываться именем относительно текущего каталога. Текущим называется каталог, в котором в данный момент находится пользователь и, который обычно указывает файлы этого пользователя или группы пользователей. Файловая система обеспечивает защиту файлов от несанкционированного доступа на уровнях пользователя или группы пользователей. Как с каждым процессом связан идентификатор процесса, так и с каждым файлом в UNIX связан индексный дескриптор, содержащий его основные характеристики. Такой подход делает программы полностью независимыми от местоположения объектов, с которыми они работают. Все действия в рамках UNIX координируются ядром системы. Ядро во время работы постоянно находится в оперативной памяти и содержит системные программы и управляющие структуры данных. В его функции входит:
Ядро всегда работает в режиме "система". Оно обеспечивает мультипрограммную поддержку в многопользовательском (многотерминальном) режиме, называемым также режимом разделения времени. Количество функций ядра в UNIX минимизировано за счет того, что большое число системных задач решается специальными утилитами. Пользователь взаимодействует с системой на уровне командного языка. В командном языке каждой команде соответствует свой выполняемый файл, поэтому набор команд может быть легко расширен за счет добавления новых команд и соответствующих им выполняемых файлов. Обработка команд командного языка производится интерпретатором команд shell. По построению командный язык напоминает процедурный язык программирования высокого уровня. В частности, он позволяет организовывать конвейеры команд и содержит конструкции типа условного оператора, цикла и т.п. Это делает программирование в UNIX двухуровневым. Программист может писать свои программы на выбранном языке программирования, например, Си, но он может написать программы и на командном языке. Допускается и смешанный вариант программирования, когда часть программ пишется на языке программирования, а затем обращение к ним производится из программ, написанных на командном языке. При этом надо иметь в виду, что программы, реализованные на командном языке, работают значительно медленнее из-за интерпретации каждой команды. UNIX поддерживает ряд систем программирования, но наиболее удобной из них является система программирования Си. Си - язык системного программирования, однако его с успехом можно применять как для задач вычислительного характера, так и для задач обработки данных. Обладая многими свойствами, присущими языкам типа Ассемблера, он остается в то же время процедурным языком программирования, и его использование существенно повышает производительность труда программистов. Сама по себе система UNIX невелика по объему и довольно проста. Средства системы выразительны и имеют удобную мнемонику. Допускается изучение системы по частям, что дает возможность пользователю ограничиться изучением только того набора средств, который ему в данный момент необходим. Как показала практика, неподготовленный пользователь выходит на режим самостоятельной работы через одну - две недели после начала освоения UNIX. Инструментальность UNIX проявляется в ее насыщенности различными программными средствами, облегчающими процесс конструирования программного обеспечения. Инструментальные средства UNIX можно разделить на следующие группы:
Свойство мобильности, которое присуще UNIX, означает возможность переноса системы с одной машинной архитектуры на другую с минимальными затратами. Мобильность UNIX обеспечивается разумным выбором соответствующей виртуальной UNIX-машины и уровнем языка, на котором система написана. Виртуальная машина должна быть достаточно абстрактной, чтобы при создании виртуальной системы можно было бы оперировать такими общими понятиями, как процесс, ресурс, файл и т. п., и в то же время не отрываться далеко от реальной ЭВМ, чтобы машинно-зависимая часть системы была наименьшей из возможных. В UNIX на уровне виртуальных понятий рассматриваются: управление процессами, распределение памяти, ввод-вывод, командный язык и др., а машинно-зависимая часть четко выделена. Наряду с достоинствами, системе UNIX присущ ряд недостатков: не поддерживается режим реального времени; слабая устойчивость к аппаратным сбоям; снижение эффективности при решении однотипных задач. В UNIX слабо развиты средства взаимодействия и синхронизации процессов, отсутствуют средства гибкого управления их приоритетами. Все это приводит к низкой реактивности системы и делает ее использование в режиме реального времени нецелесообразным. С другой стороны, поскольку UNIX, развивалась с ориентацией на область научных исследований, в ней отсутствовали некоторые возможности, необходимые в коммерческих применениях. Ряд разработчиков программного обеспечения предложили собственные коммерческие версии ОС UNIX, полученные путем ее расширения, например, системы IDRES, CROMIX, COGERENT, ONIX, XENIX. Последняя система - одна из наиболее широко известных, разработана фирмой Microsoft в начале 90-х годов с возможностями широкого коммерческого применения. Из-за возрастающей популярности системы UNIX перечень прикладных программ, способных работать под ее управлением, постоянно увеличивается. Имеются программы обработки текстов, верстки газет, управления базами данных; трансляторы для языков Бейсик, Фортран, Кобол, Си/Си++, Паскаль, Ассемблеров и др. языков программирования. В настоящее время, благодаря техническому прогрессу, микро-ЭВМ имеют достаточно мощные вычислительные ресурсы, чтобы удовлетворить жестким требованиям функционирования ОС UNIX. Стало возможным выполнение большинства программ, которые широко применялись под управлением операционных систем СР/М, MS-DOS, PC-DOS, VAX, WINDOWS 2000. Вследствие возрастания коммерческого и прикладного значения ОС UNIX, а также удобства в эксплуатации, перспективы ее распространения и спроса становятся неограниченными. |
Методические указания к лабораторным и домашним работам по дисциплине «Операционные системы» |
Методические указания к лабораторным работам по дисциплине “ Методические указания к лабораторным работам по дисциплине “Нормативные документы и должностные инструкции” / А. Г. Куприянов, А.... |
||
О. Р. Никитин Специализация по теме диссертации Методические указания... Методические указания к лабораторным работам предназначены для бакалавров направления 210400 «Радиотехника» и специальности 210600... |
Методическая разработка и указания к лабораторным работам по дисциплине... Федеральное государственное образовательное учреждение высшего профессионального образования |
||
Методическая разработка и указания к лабораторным работам по дисциплине... Федеральное государственное образовательное учреждение высшего профессионального образования |
Методические указания к лабораторным работам по дисциплине «микроэлектронные устройства» Горохов А. В, Пичугина Л. П. Методические указания к лабораторным работам по дисциплине «Микроэлектронные устройства». – М.: Ргу... |
||
Методические указания к лабораторным работам №№1÷4 по дисциплине «Web-программирование» Отчеты по лабораторным работам оформляются в электронном виде с именами авт-500 Иванов, Петров (лр1). doc (или *. docx, *. rtf, *.... |
Методические указания к лабораторным работам «спектрофотометрический анализ» Методические указания к лабораторным работам «спектрофотометрический анализ» по спецкурсу «оптические методы анализа» для студентов... |
||
Методические указания к лабораторным работам по курсу «Новые разделы информатики» Данные методические указания «Мультимедиа технологии»к лабораторным работам могут быть полезны студентам и преподавателям смежных... |
Методические указания к лабораторным работам по курсу «Новые разделы информатики» Данные методические указания «Мультимедиа технологии»к лабораторным работам могут быть полезны студентам и преподавателям смежных... |
||
Методические указания к лабораторным работам по дисциплине «Физико-химические методы анализа» Методические указания составили: доценты: С. А. Соколова, О. В. Перегончая, Л. Ф. Науменко, А. К. Решетникова, О. В. Дьяконова,,... |
Вычислительная техника ” схемотехника методические указания к лабораторным работам самара 2000 Схемотехника: Метод указания к лабораторным работам / Самар гос техн ун-т; Сост. И. В. Воронцов, В. П. Золотов. Самара, 2000, 59... |
||
Методические указания по дисциплине пд. 02 Химия для выполнения лабораторных... Методические указания и задания к лабораторно-практическим занятиям для студентов специальности 35. 02. 05 Агрономия по дисциплине... |
Методические указания «Аналитические запросы» по дисциплине «Постреляционные базы данных» Учебно-методические материалы «Аналитические запросы» представляют собой методические указания к лабораторным работам по дисциплине... |
||
Методические указания к лабораторным работам по дисциплине «Технологии... Лабораторная работа 2 Составление календарного плана разработки портала вуза 16 |
Методические указания к практическим работам по учебной дисциплине Методические указания к практическим работам по учебной дисциплине История отечественного государства и права для студентов спо специальности... |
Поиск |