АЛМАТИНСКИЙ УНИВЕРСИТЕТ ЭНЕРГЕТИКИ И СВЯЗИ

КАФЕДРА ИНЖЕНЕРНОЙ КИБЕРНЕТИКИ

 

 

 

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

Методические указания к выполнению

расчетно-графических работ для студентов всех форм обучения

специальности 5B070200 – «Автоматизация и управление»

 

 

 

Алматы 2011 

СОСТАВИТЕЛИ: Сябина Н.В., Рудакова Л.Н. Методические указания к  выполнению расчетно-графических работ по дисциплине «Операционные системы» для студентов всех форм обучения специальности 5B070200 - «Автоматизация и управление». – Алматы: АУЭС, 2010 – 22 с.

 

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

1) Основы работы с операционными системами Windows и Linux.

2) Работа с файловой системой.

3) Анализ современных операционных систем.

Методические указания предназначены для студентов всех форм обучения специальности 5В070200 – «Автоматизация и управление».

    Табл. 3, библиогр. –  19 назв.

 

  

Рецензент: канд. техн. наук, проф. Шевяков Ю.В.

 

 

Печатается по плану издания некоммерческого акционерного общества «Алматинский институт энергетики и связи» на 2010 г.

 

© НАО «Алматинский университет энергетики и связи», 2011 г.


1 Расчетно-графическая работа. Основы работы с операционными системами Windows и Linux

 

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

 

1.1 Задания к расчетно-графической работе

1.1.1 Используя доступную версию Windows, перейти в режим командной строки и выполнить следующие действия:

а) создать каталог на диске, сделать его текущим;

б) создать дочерний каталог для своего текущего каталога;

в) используя соответствующую команду, убедиться в создании подкаталога;

г) сделать дочерний каталог текущим;

д) создать текстовый файл с некоторым фрагментом текста;

е) перейти в родительский каталог и выполнить поиск созданного файла;

ж) создать несколько текстовых файлов с наличием в них одних и тех же элементов текста;

з) организовать поиск элементов текста в группе файлов, используя шаблоны имен файлов;

и) скопировать один из файлов на съемный носитель, проверить правильность выполнения команды;

к) переименовать любой из созданных файлов;

л) удалить все файлы, созданные при выполнении пункта ж;

м) переместить все созданные каталоги на съемный носитель и уничтожить.

 

1.1.2 Используя установленную виртуальную машину для работы в одной из версий Linux, выполнить задания п.1.1.1.

 

1.1.3 Выполнить задания п.1.1.1 с помощью созданного командного файла. Сравнить полученные при выполнении п.1.1.1 и п.1.1.2 результаты.

 

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

 

1.2 Общие рекомендации к выполнению расчетно-графической работы

1.2.1 Среди разнообразных программных продуктов компании Microsoft особое место занимают операционные системы. Начав с разработки простейшей однопрограммной операционной системы для первого персонального компьютера, эта компания в недалеком прошлом выпустила версию серверной операционной системы Windows Server 2008, которая предназначена для построения корпоративных сетей и считается на сегодняшний день одной из самых сложных и полнофункциональных. Для встроенных систем (в том числе систем для карманных компьютеров и других мобильных систем) Microsoft разработала операционные системы семейства Windows СЕ.

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

Основной особенностью систем Windows является то, что все они предназначены для диалогового режима работы и поэтому в качестве основного интерфейса выбран графический, как более функциональный и удобный. Если в таких операционных системах, как Linux, QNX или OS/2, можно работать с системой через интерфейс командной строки и этим ограничиться, то во всех системах Windows невозможно использовать текстовый интерфейс командной строки без графического.

Многие считают, что интерфейс командной строки нужен только для относительно редкого вмешательства в работу операционной системы. Однако это не так. Дело в том, что посредством скриптов можно автоматизировать выполнение функций, связанных с управлением вычислительными процессами. Скрипт — это текстовый файл, содержащий программу действий, составленную на соответствующем языке. Например, пакетные (batch) файлы в операционных системах от компании Microsoft, которые имеют расширение bat, обрабатываются командным интерпретатором C0MMAND.COM, если речь идет о сеансах DOS, или командным процессором CMD.EXE, если речь идет о системах типа Windows NT/2000/ХР и в скрипте имеются соответствующие команды. При запуске программы CMD.EXE открывается сеанс обычного защищенного 32-разрядного режима.

В ряде случаев графический режим не нужен, поскольку выполняющиеся вычисления не требуют диалога с пользователем. К таким случаям можно отнести задачи автоматизированного управления различными технологическими процессами, а также специальным автоматизированным оборудованием. А поскольку в этих случаях графический диалоговый режим работы с системой не нужен, не нужны операционной системе и соответствующие вычислительные ресурсы, необходимые для функционирования этого режима. Если же вдруг потребуется организовать диалоговое взаимодействие с операционной системой, то тот же графический режим может быть запущен непосредственно из командной строки, что и делается в операционных системах семейства UNIX (Linux, FreeBSD и т. д.), QNX, OS/2.

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

а) Пуск – команда Выполнить – в поле ввода набрать cmd (команда Windows, сокращение от слова commander);

б) ПускПрограммыСтандартныеКомандная строка.

Отключение режима обеспечивается набором в строке приглашения команды exit и ее выполнения при нажатии клавиши Enter.

В состав внутренних команд в системе Windows  входит примерно семьдесят команд. Весь перечень этих команд можно просмотреть, если в командной строке выполнить команду help. Для ознакомления с каждым элементом перечня следует использовать сложную команду:

help имя_команды  или имя_команды / ?

Так как список команд достаточно обширный, то обычно их рассматривают, разбив на группы:

1) команды справочной системы;

2) команды файловой системы;

3) команды управления работой ОС;

4) команды пакетных (командных) файлов.

К основным командам файловой системы относятся следующие:

а) сd, chdir -  смена текущей папки или диска;

б) chkdsk  - проверка диска и вывод статистики;

в) cls  - очистка экрана;

г) copy – копирование одного или нескольких файлов в другое место;

д) del – удаление одного или нескольких файлов;

е) dir – вывод списка файлов и подпапок из указанной папки;

ж) md, mkdir – создание новой папки;

з) move – перемещение одного или нескольких файлов из одной папки в другую;

и) rd, rmdir – удаление папки;

к) ren – переименование файлов, папок;

л) tree – графическое отображение структуры папок заданного диска или заданной папки;

м) type – вывод на экран содержимого текстовых файлов.

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

Командный файл – это группа последовательных команд настройки компьютера на определенный режим или выполнение определенных операций. Командный файл создается по обычным правилам, но расширением должно быть только одно сочетание - bat  (сокращение от batch – пачка). Выполнение командного файла может быть прекращено командами Ctrl+Break или Ctrl+C. Командный файл выполняется командным процессором строка за строкой. Из командного файла можно вызвать другой командный файл командой Call (с возвратом) или обычной командой вызова (без возврата). Перед выполнением очередной строки командного файла ее значение выводится на экран. Вывод любой строки командного файла на экран подавляется, если строка начинается с символа @.

 

1.2.2 Linux — это современная UNIX-подобная операционная система для персональных компьютеров и рабочих станций, удовлетворяющая стандарту POSIX. Как известно, Linux — это свободно распространяемая версия UNIX-систем, которая первоначально разрабатывалась Линусом Торвальдсом в университете Хельсинки (Финляндия). Он выдвинул условие, согласно которому исходные коды являются открытыми, любой может их использовать и изменять, но при этом обязан оставить открытым и свой код, внесенный в тот или иной модуль системы. Все компоненты системы, включая исходные тексты, распространяются с лицензией на свободное копирование и установку для неограниченного числа пользователей. Таким образом, система Linux была создана с помощью многих программистов и энтузиастов UNIX-систем, общающихся между собой через Интернет. К данному проекту добровольно подключились те, кто имеет достаточно навыков и способностей развивать систему. Большинство программ Linux разработаны в рамках проекта GNU из Free Software Foundation (Кембридж, штат Массачусетс). Но в него внесли свою лепту и многие программисты со всего мира.

Изначально система Linux создавалась как «самодельная» UNIX-подобная реализация для машин типа IBM PC с процессором i80386. Однако вскоре Linux стала настолько популярна и ее поддержало такое большое число компаний, что в настоящее время имеются реализации этой операционной системы практически для всех типов процессоров и компьютеров на их основе. На базе Linux создаются и встроенные системы, и суперкомпьютеры. Система поддерживает кластеризацию и большинство современных интерфейсов и технологий. Linux - это полноценная многозадачная многопользовательская операционная система. Это означает, что одновременно много пользователей могут работать на одной машине, параллельно выполняя множество программ.

Система Linux достаточно хорошо совместима с рядом стандартов для UNIX на уровне исходных текстов, включая IEEE P0SIX.1, System V и BSD. Linux поддерживает различные типы файловых систем для хранения данных. Некоторые файловые системы, такие, как EXT2FS, были созданы специально для Linux. Поддерживаются также другие типы файловых систем, например, Minix-1 и Xenix, реализована система управления файлами на основе FAT, позволяющая непосредственно обращаться к файлам, находящимся в разделах с этой файловой системой. Поддерживается также файловая система ISO 9660 CD-ROM для работы с дисками CD-ROM. Имеются системы управления файлами и на томах с HPFS и NTFS, правда, они работают только на чтение файлов. Созданы варианты системы управления файлами и для доступа к FAT32; эта файловая система в операционной системе Linux называется VFAT.

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

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

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

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

 

1.3 Контрольные вопросы

1.3.1    Какими особенностями обладают ОС семейства Windows?

1.3.2    Каковы особенности работы в командной строке Windows?

1.3.3    Какие группы внутренних команд Windows Вам известны?

1.3.4    Что представляют собой командные файлы Windows?

1.3.5    В каких случаях имеет смысл использовать командную строку?

1.3.6    Перечислите особенности семейства UNIX-подобных систем.

1.3.7    Какой набор внутренних команд имеется в ОС Linux?

1.3.8    Каковы особенности работы с виртуальной машиной?

1.3.9    Какие возможности предлагает Linux для работы с файлами?

1.3.10   Каковы особенности работы в командной строке Linux?


2 Расчетно-графическая работа. Работа с файловой системой

 

Цель работы – получить практические навыки работы с файловой системой Windows.

 

2.1 Задания к расчетно-графической работе

2.1.1 Выбрать в таблице 2.1 вариант задания. Для его реализации разработать программу с использованием любой известной среды программирования. Организовать диалог с пользователем. С этой целью:

- создать пользовательский интерфейс;

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

 

Таблица 2.1 – Варианты заданий

Вариант

Задание

1 - 5

Работа с каталогами. Организовать:

- создание каталога;

- проход дерева каталогов;

- удаление указанного каталога с подкаталогами;

- сравнение указанных каталогов;

- просмотр изображений в указанном каталоге;

- перемещение каталога с его содержимым в указанное место на диске;

- получение информации об указанном каталоге.

6 – 10

Работа с файлами. Организовать:

- создание файла с указанным именем;

- удаление указанного файла;

- копирование файла;

- переименование указанного файла (имя, расширение);

- сравнение двух указанных файлов по содержимому;

- отображение и скрытие указанных файлов;

- получение полной информации о файле.

11 – 15

Работа с дисками. Организовать:

- копирование и перемещение каталога на указанный диск;

- определить существование заданного файла на указанном диске;

- копирование содержимого съемного диска в указанное место на жестком диске;

- определение типа носителя;

- получение информации об указанном диске;

- определение количества файлов на диске.

 

 

 

Окончание таблицы 2.1

16 – 20

Поиск информации. Организовать:

- получение списка системных файлов;

- получение списка скрытых файлов.

- получение списка архивных файлов;

- определение пути к указанному файлу;

- поиск файлов по содержимому;

- поиск файла по размеру и дате изменения;

- поиск группы файлов по указанному шаблону.

21 - 25

Сортировка и синхронизация. Организовать:

- синхронизацию указанных каталогов;

- выделение группы файлов по указанному признаку;

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

- сортировку файлов по размеру;

- сортировку файлов по расширению;

- сортировку файлов по дате изменения.

26 - 30

Работа с файлами. Организовать:

- сравнение файлов в указанных каталогах по дате последних изменений;

- вывод содержимого указанного файла в окне приложения;

- установку и изменение атрибутов файла;

- проверку существования файла;

- резервное копирование файлов по запросу пользователя.

 

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

 

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

 

2.1.3 Используя компьютер с установленной на нем ОС Windows ХР, проверить правила, которые определяют состояние разрешений доступа при перемещении или копировании объектов при использовании файловой системы NTFS. Дать пояснения к полученным результатам.

 

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

 

2.1.5 Создать папку Examen, в которую пользователи — члены группы Students — могли бы записать результаты своей работы, но не смогли бы прочитать чужую работу и, соответственно, исправить ошибки в своей. Дать пояснения к полученным результатам.

2.2 Общие рекомендации к выполнению расчетно-графической работы

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

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

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

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

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

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

Благодаря системам управления файлами пользователям предоставляются следующие возможности:

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

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

- обмен данными между файлами, между устройствами, между файлом и устройством (и наоборот);

- работа с файлами путем обращений к программным модулям системы управления файлами (часть API ориентирована именно на работу с файлами);

- защита файлов от несанкционированного доступа.

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

 

2.2.2 Каждый файл на диске имеет набор стандартных атрибутов:

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

- D (Directory — каталог). Показывает, что данный элемент каталога указывает на подкаталог, а не на файл.

- V (Volume — том). Применяется только к одному элементу каталога в корневом каталоге. В нем собственно и хранится имя дискового тома. Этот атрибут также применяется в случае длинных имен файлов.

- S (System — системный). Показывает, что файл является частью операционной системы или специально отмечен подобным образом прикладной программой, что иногда делается для защиты от копирования.

- Н (Hidden — скрытый). К скрытым относятся также файлы с установленным атрибутом S (системный), которые не отображаются по команде DIR.

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

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

 

2.2.3 Файловая система NTFS (New Technology File System — файловая система новой технологии). Действительно, файловая система NTFS по сравнению с широко известными FAT16 и FAT32 содержит ряд значительных усовершенствований и изменений. С точки зрения пользователей файлы по-прежнему хранятся в каталогах (папках - folders). Однако в ней появилось много новых особенностей и возможностей. При проектировании NTFS особое внимание было уделено надежности, механизмам ограничения доступа к файлам и каталогам, расширенной функциональности, поддержке дисков большого объема и пр.

Каждый файл на диске в системе NTFS представлен с помощью потоков данных (streams), то есть у файла нет «просто данных», а есть «потоки данных». Чтобы правильнее понять эту сущность (поток данных), достаточно знать, что один из потоков имеет привычный смысл — это собственно данные файла. Кстати, большинство атрибутов файла (за исключением основных) — это тоже потоки данных.

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

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

Применение разрешений NTFS для каталогов сходно с применением разрешений доступа к общим ресурсам. Управление разрешениями на каталог или файл осуществляется, как правило, через Проводник. Для этого необходимо щелкнуть на объекте правой кнопкой мыши, выбрать в контекстном меню команду Properties (Свойства) и в открывшемся окне перейти на вкладку Security (Безопасность). На этой вкладке имеется три раздела:

1) Permissions (Разрешения) - позволяет просмотреть и/или изменить разрешения;

2) Audit (Аудит) - предназначен для аудита администратором системы в зависимости от того, успех или отказ в той или иной операции над файловым объектом необходимо проконтролировать;

3) Owner (Владелец) - предназначен для просмотра и/или смены владельца файлового объекта.

В пользовательском интерфейсе Windows имеется перечень из 13 разрешений, которые можно назвать индивидуальными, хотя Microsoft более этот термин не употребляет и называет их специальными разрешениями. В таблице 2.2 приводится перечень специальных разрешений NTFS для Windows XP:

 

Таблица 2.2 – Специальные разрешения NTFS для Windows XP

Группа /

Наименование разрешения

Назначение

разрешения

Traverse Folder/Execute File

Обзор папок/Выполнение файлов

Traverse Folder

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

Execute File

Разрешает (или запрещает) запуск программ (применимо только к файлам).

List Folder/Read Data

Содержание папки/Чтение данных

List Folder

Разрешает (или запрещает) просмотр имен файлов и вложенных папок внутри папки (применимо только к папкам).

Read Data

Разрешает (или запрещает) чтение данных из файлов (применимо только к файлам).

Read Attributes

Чтение атрибутов

Разрешает (или запрещает) просмотр атрибутов файла или папки таких, как «только для чтения» или «скрытый». Атрибуты определяются  файловой системой NTFS.

Read Extended Attributes

Чтение дополнительных атрибутов

Разрешает (или запрещает) просмотр допол-нительных атрибутов файла или папки. Допол-нительные атрибуты определяются программами и зависят от них. Атрибуты сжатия файлов NTFS и шифрования относятся к дополнительным.

Окончание таблицы 2.2

Create Fi'les/Write Data

Создание файлов/Запись данных

Create Files

Разрешает (или запрещает) создание файлов в папке (применимо только к папкам).

Write Data

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

Create Folders/Append Data

Создание папок/Дозапись данных

Create Folders

Разрешает (или запрещает) создание папок в папке (применимо только к папкам)

Append Data

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

к файлам).

Write Attributes

Запись атрибутов

Разрешает (или запрещает) смену атрибутов файла или папки, таких как «только для чтения» или «скрытый». Атрибуты определяются файловой системой NTFS.

Write Extended Attributes

Запись дополнительных атрибутов

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

Delete Subfolders and Files

Удаление подпапок и файлов

Разрешает (или запрещает) удаление вложенных папок и файлов даже при отсутствии разрешения Delete.

Delete

Удаление

Разрешает (или запрещает) удаление файла или папки. При отсутствии этого разрешения требуемый объект (файл или папку) все же можно удалить при наличии разрешения Delete Subfolders and Files для родительской папки.

Read Permissions

Чтение разрешений

Разрешает или запрещает чтение разрешений

на доступ к файлу или папке таких, как Full Control, Read и Write.

Change Permissions

Смена разрешений

Разрешает или запрещает чтение разрешений

на доступ к файлу или папке таких, как Full Control, Read и Write.

Take Ownership

Смена владельца

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

2.3 Контрольные вопросы

2.3.1    Что такое «файловая система»?

2.3.2    Что представляет собой система управления файлами?

2.3.3.   Что дает использование той или иной файловой системы?

2.3.4    Какие файловые системы применяются на персональных компьютерах?

2.3.5    Перечислите функции систем управления файлами.

2.3.6    Сравните файловые системы FAT16 и FAT32.

2.3.7   Перечислите основные возможности файловой системы NTFS.

2.3.8    Что представляют собой атрибуты файлов?

2.3.9   Какие стандартные атрибуты файлов Вам известны?

2.3.10   С какой целью в файловых системах вводятся разрешения?

 

 

3 Расчетно-графическая работа. Анализ современных операционных систем

 

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

 

3.1 Задания к расчетно-графической работе

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

-   общая характеристика, основные понятия и основные функции;

-   особенности интерфейсов;

-   организация ядра, мобильность системы, совместимость;

-   способы распределения ресурсов (процессорного времени, оперативной и внешней памяти, программных модулей и т.д.);

-   используемые при планировании вычислительных процессов дисциплины диспетчеризации;

-   взаимодействие между процессами;

-   модель безопасности.

 

3.1.2 Используя возможности любой из известных сред программирования (С++Builder, TC, Delphi и т.д.), разработать программу для получения следующих характеристик установленной на Вашем компьютере операционной системы:

- версию операционной системы;

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

- общий объем виртуальной памяти и доступной (свободной) в данный момент времени виртуальной памяти;

- размещение и объем файла подкачки.

 

Таблица 3.1 – Варианты заданий

Вариант

Наименование

операционной системы

Вариант

Наименование

операционной системы

1

MS DOS

16

Windows Neptune/Nashville

2

OS/2 Warp

17

Windows Odyssey/Cairo

3

Windows 1.x-3.x

18

FreeBSD

4

Windows 9x/ME

19

BSD Unix

5

Windows NT 3x/4x

20

Xenix

6

Windows Singularity

21

HP/UX

7

Windows XP

22

Mac OS

8

Windows Server 2003

23

Solaris

9

Windows Vista

24

Mandriva Linux

10

Windows Home Server

25

Fedora Core

11

Windows Server 2008

26

QNX

12

Windows Seven

27

Novell

13

Windows Mobile/CE

28

Ubuntu/Kubuntu

14

Windows Azure

29

Debian GNU/Linux

15

Windows FLP

30

AIX

 

3.1.3 Создать пакетный файл, который бы позволил получить характеристики операционной системы из п.3.1.2.  

 

3.2 Общие рекомендации к выполнению работы

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

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

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

 

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

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

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

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

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

 

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

Одним из важнейших ресурсов являет­ся сам процессор, точнее — процессорное время. Процессорное время делится попеременно (параллельно). Имеется множество методов разделения этого ресур­са.

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

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

Не менее важным видом ресурсов являются программные модули. Прежде всего, системные программные модули, поскольку именно они обычно считаются программными ресурсами и поэтому в принципе могут распреде­ляться между выполняющимися процессами. Однократно используемые программные модули являются недели­мым ресурсом и, как правило,  их вообще не распределяют как ресурс системы. Среди повторно используемых программных модулей различают: непри­вилегированные, привилегированные и реентерабельные. Привилегированные программные модули распределяются как попеременно разделяемый ресурс. Непривилегированные программные модули в общем случае нельзя считать разделяемыми. Реентерабельные программные модули допускают повторное многократное прерывание своего исполнения и повторный их запуск по обращению из других задач (вычислительных процессов). Кроме указанных, существуют еще повторно входимые (re-entrance) - программные модули, которые допус­кают свое многократное параллельное использование, но, в отличие от реентерабель­ных, их нельзя прерывать.

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

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

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

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

Два параллельных процесса могут быть независимыми (independed processes) либо взаимодействующими (cooperating processes).

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

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

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

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

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

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

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

 

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

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

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

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

Во многих современных операционных системах гарантируется степень безопасности данных, соответствующая уровню С2 в системе стандартов США. Основы стандартов в области безопасности были заложены в документе «Критерии оценки надежных компьютерных систем» (1983 г., National Computer Security Center).

 

3.2.6 Для получения версии операционной системы существуют разные способы. Наиболее простой из них:

procedure TForm1.WinVer;

var WinV: Word;    

 

begin 

WinV := GetVersion AND $0000FFFF;   

Edit6.Text := IntToStr(Lo(WinV))+'.'+IntToStr(Hi(WinV));   

end;

 

 

3.3 Контрольные вопросы

3.3.1    Что такое операционная система?

3.3.2    Перечислите основные функции операционных систем.

3.3.3    Что такое операционная среда? Какие основные, наиболее известные операционные среды Вы можете перечислить?

3.3.4    Что представляет собой ядро операционной системы?

3.3.5    Какие классификации операционных систем Вам известны?

3.3.6    Объясните понятие ресурса. Перечислите виды и типы известных ресурсов.

3.3.7    Какие способы разделения ресурсов Вы знаете?

3.3.8    Какие дисциплины диспетчеризации задач Вы знаете? Поясните их основные идеи, перечислите достоинства и недостатки.

3.3.9    Какие процессы называются взаимодействующими? Каковы их особенности?

3.3.10  В чем разница между аутентификацией и авторизацией пользователя?


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

1    Бэкон Д. Операционные системы. – СПб., 2004.

2    Гордеев В.А. Операционные системы. – СПб., 2007.

3    Дейтель М.Х. Операционные системы. Основы и принципы. – М., 2006.

4    Илюшечкин В.М. Операционные системы. - М., 2009.

5    Иртегов Д.В. Введение в операционные системы. - СПб., 2008.

6    Карпов В.Е. Основы операционных систем. - М., 2005.

7    Колесниченко Д. Секреты реестра Windows ХР/Vista. - СПб., 2008.

8    Коньков К.А. Устройство и функционирование ОС Windows. - М., 2008.

9    Назаров С.В. Операционные среды, системы и оболочки. Основы структурной и функциональной организации. – М., 2007.

10  Олифер В.Г. Сетевые операционные системы. - СПб., 2008.

11  Таненбаум Э. Современные операционные системы. – СПб., 2005.

12  Цилькер Б.Я. Организация ЭВМ и систем. - СПб., 2007.

13 Гордеев А.В., Молчанов А.Ю. Системное программное обеспечение. – СПб., 2002.

14 Финогенов К.Г. Самоучитель по системным функциям MS-DOS. - М., 2001.

15 Курячий Г.В. Операционная система UNIX. - М., 2004.

16 Стахнов А. Linux. - СПб., 2009.

17 Пог Д. Windows Vista. - М., 2008.

18 Основы информационной безопасности /под ред. Е.Б. Белова. - М., 2006.

19 Максимов Н.В. Архитектура ЭВМ и вычислительные системы. –М., 2010.

 

 

Содержание 

1 Расчетно-графическая работа. Основы работы с операционными

системами Windows и Linux                                                                             3

2 Расчетно-графическая работа. Работа с файловой системой                     8

3  Расчетно-графическая работа. Анализ современных операционных

систем                                                                                                              15

Список литературы                                                                                         22