Порядок выполнения работы




Министерство транспорта Российской Федерации

Федеральное агентство железнодорожного транспорта

 

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

САМАРСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ПУТЕЙ СООБЩЕНИЯ

 

 

Кафедра информационных систем и телекоммуникаций

 

 

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

Методические указания к лабораторным работам

для студентов специальности 230201

очной и заочной форм обучения

 

 

Составители: Д. Н. Франтасов

 

 

 
 


Самара 2012

УДК 004.7:681.324

 

Операционные системы: Методические указания лабораторным работам для студентов специальности 230201 очной и заочной форм обучения / составители А. М. Косолапов, Д. Н. Франтасов. – Самара: СамГУПС, 2012. – 25.

 

Утверждено на заседании кафедры информационных систем и телекоммуникаций, протокол №8.

Печатается по решению редакционно – издательского совета университета.

 

Методические указания посвящены практическому изучению вопросов управления системными ресурсами в операционной системе UNIX. Указанные вопросы включены в программу курса для студентов специальности 230201.

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

Приведены контрольные вопросы и задания для самостоятельного решения.

 

Составители: Франтасов Дмитрий Николаевич

 

Рецензенты:

 

Редактор:

Компьютерная верстка:

 

Подписано в печать Формат 60х90 1/16

Усл. печ.л. Тираж экз. Заказ №.

© Самарский государственный университет путей сообщения, 2012

Основные принципы функционирования операционной системы Unix

Лабораторная работа №1

Основные команды shell интерпретатора

 

Введение

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

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

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

·оболочка Борна (Bourne) - первоначальная командная оболочка UNIX: базовый, но полный набор функций;

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

·оболочка Корна - напоминает оболочку С, но операторы управления программой совместимы с операторами оболочки Борна;

·BASH - сокращение от Bourne Again Shell (опять оболочка Борна), в основе своей совмещает свойства оболочек С и Корна (разработка компании Free Software Foundation).

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

 

Порядок выполнения работы

Формат команд в операционной системе (ОС) имеет следующий вид:

имя команды [аргументы] [параметры] [метасимволы]

Имя команды может содержать:

- любое допустимое имя файла;

- аргументы (одна или несколько букв со знаком минус «-»;

- параметры (передаваемые значения для обработки);

- метасимволы (интерпретируются как специальные операции).

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

Командный интерпретатор shell вызывает команды, реализованные в виде программы на языке СИ, и передает им аргументы.

Синтаксис команды echo:

echo [-n] [arg1] [arg2] [arg3]...

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

who [a m i] - получение информации о работающих пользователях.

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

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

- идентификатор терминала;

- дата подключения;

- время подключения.

date - вывод на экран текущей даты и текущего времени.

cal [[месяц]год] – календарь. Если календарь не помещается на одном экране, то используется команда cal год | more и клавишей пробела производится постраничный вывод информации.

man <название команды> - вызов электронного справочника об указанной команде. Выход из справочника - нажатие клавиши Q.

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

cat <имя файла > - вывод содержимого файла на экран. Команда cat > text.1 создает новый файл с именем text.1, который можно заполнить символьными строками, вводя их с клавиатуры. Нажатие клавиши Enter создает новую строку. Завершение ввода - нажатие Ctrl - d. Команда cat text.1 > text.2 пересылает содержимое файла text.1 в файл text.2. Слияние файлов осуществляется командой cat text.1 text.2 > text.3.

ls [a l r s t u] [имя каталога] - вывод содержимого каталога на экран. Если аргумент не указан, выдается содержимое текущего каталога.

Аргументы команды:

-a - выводит список всех файлов и каталогов, в том числе и скрытых;

-l - выводит список файлов в расширенном формате, показывая тип каждого элемента, полномочия, владельца, размер и дату последней модификации;

-r - выводит список в порядке, обратном заданному;

-s - выводит размеры каждого файла;

-t - перечисляет файлы и каталоги в соответствии с датой их последней модификации;

-u - перечисляет файлы и каталоги в порядке, обратном их последней модификации.

rm <имя файла> - удаление файла (файлов). Команда rm text.1 text.2 text.3 удаляет файлы text.1, text.2, text.3.

wc [имя файла] - вывод числа строк, слов и символов в файле.

clear - очистка экрана.

Группы команд или сложные команды могут формироваться с помощью специальных символов (метасимволов):

& - процесс выполняется в фоновом режиме, не дожидаясь окончания предыдущих процессов;

? - шаблон, распространяется только на один символ;

* - шаблон, распространяется на все оставшиеся символы;

| - программный канал - стандартный вывод одного процесса является стандартным вводом другого;

> - переадресация вывода в файл;

< - переадресация ввода из файла;

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

&& - эта конструкция между командами означает, что последующая команда выполняется только при нормальном завершении предыдущей команды (код возврата 0);

|| - последующая команда выполняется только, если не выполнилась предыдущая команда (код возврата 1);

() - группирование команд в скобки;

{ } - группирование команд с объединенным выводом;

[ ] - указание диапазона или явное перечисление (без запятых);

>> - добавление содержимого файла в конец другого файла.

ps [a l] [number] - команда для вывода информации о процессах:

-a - вывод информации обо всех активных процессах, запущенных с вашего терминала;

-l - полная информация о процессах;

number - номер процесса.

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

 

F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD

1 S 200 210 7 0 2 20 80 30 703a 03 0:07 cc

1 R 12 419 7 11 5 20 56 20 03 0:12 ps

 

F - флаг процесса (1 - в оперативной памяти, 2 - системный процесс, 4 - заблокирован в ОЗУ, 20 - находится под управлением другого процесса, 10 - подвергнут свопингу);

S - состояние процесса (O - выполняется процессором, S - задержан, R - готов к выполнению, I - создается);

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

PID - идентификатор процесса;

PPID - номер родительского процесса;

C - степень загруженности процессора;

PRI - приоритет процесса, вычисляется по значению переменной NICE и чем больше число, тем меньше его приоритет;

NI - значение переменной NICE для вычисления динамического приоритета, принимает величины от 0 до 39;

ADDR - адрес процесса в памяти;

SZ - объем ОЗУ, занимаемый процессом;

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

TTY - номер управляющего терминала для процесса;

TIME - время выполнения процесса;

CMD - команда, которая породила процесс.

nice [-приращение приоритета] команда[аргументы] - команда изменения приоритета. Каждое запущенное задание (процесс) имеет номер приоритета в диапазоне от 0 до 39, на основе которого ядро вычисляет фактический приоритет, используемый для планирования процесса. Значение 0 представляет наивысший приоритет, а 39 - самый низший. Увеличение номера приоритета приводит к понижению приоритета, присвоенного процессу.

renice - команда устанавливает значение номера приоритета процесса. Увеличить приоритет процесса может только администратор системы.

kill [s i g] <идентификатор процесса> - прекращение процесса до его программного завершения. sig - номер сигнала.

sort [d r] - сортировка входных файлов и вывод результата на экран.

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-11-19 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: