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

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

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

Методические указания к лабораторной работе - раздел Менеджмент, Управление ресурсами в ОС UNIX Обычно В Ос Unix Доступны Несколько Интерпретаторов. Наиболее Распространены ...

Обычно в ОС UNIX доступны несколько интерпретаторов. Наиболее распространены Bourne-shell (или просто - shell), C-shell, Korn-shell. В идейном плане все эти интерпретаторы близки и в дальнейшем речь будет идти о стандартном Shell (/bin/sh).

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

Если указанный интерпретатору файл является текстовым и содержит команды командного языка (командный файл) и при этом имеет разрешение на выполнение (помечен "х"), Shell-интерпретатор интерпретирует и выполняет команды этого файла. Другой способ вызова командного файла - использование команды sh (вызов интерпретатора), в котором первым аргументом указывается имя командного файла.

Коротко перечислим средства группирования команд и перенаправления ввода/вывода:

o cmd1 arg ...; cmd2 arg ...; ... cmdN arg ... - последовательное выполнение команд;

o cmd1 arg ...& cmd2 arg ...& ... cmdN arg ... - асинхронное выполнение команд;

o cmd1 arg ... && cmd2 arg ... - зависимость последующей команды от предыдущей таким образом, что последующая команда выполняется, если предыдущая выдала нулевое значение;

o cmd1 arg ... || cmd2 arg ... - зависимость последующей команды от предыдущей таким образом, что последующая команда выполняется, если предыдущая выдала ненулевое значение;

o cmd > file - стандартный вывод направлен в файл file;

o cmd >> file - стандартный вывод направлен в конец файла file;

o cmd < file - стандартный ввод выполняется из файла file;

o cmd1 | cmd2 - конвейер команд, в котором стандартный вывод команды cmd1 направлен на стандартный вход команды cmd2.

Shell-переменные могут хранить строки текста. Правила формирования их имен аналогичны правилам задания имен переменных в обычных языках программирования. При необходимости присвоить Shell-переменной значение, содержащее пробелы и другие специальные знаки, оно заключается в кавычки. При использовании Shell-переменной в выражении ее имени должен предшествовать знак $. В последовательности символов те из них, которые составляют имя, должны быть выделены в { } или " ". Кроме того интерпретатор Shell автоматически присваивает значения пяти своим переменным:

9. $? - значение, возвращаемое последней выполняемой командой;

10. $$ - идентификационный номер процесса Shell;

11. $! - идентификационный номер фонового процесса, запускаемого интерпретатором Shell последним;

12. $# - число аргументов, переданных в Shell;

13. $- - флаги, переданные в Shell.

Для отмены специальных символов ($,|,пробел и т.д.) в Shell-программах существуют следующие правила:

14. если символу предшествует обратная косая черта, то его специальный символ отменяется;

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

При вызове Shell-программ им могут передаваться параметры. Соответствующие аргументы в Shell-программах идентифицируются $1, $2, $3 и т.д. Кроме того, переменная $0 соответствует имени выполняемой Shell-программы, а переменная $# - числу аргументов в команде.

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

Наиболее важные команды для составления Shell-программ:

o команда echo выводит в выходной поток значения своих аргументов;

o команда expr выполняет арифметические действия над своими аргументами;

o команда eval обеспечивает дополнительный уровень подстановки своих аргументов, а затем их выполнение;

o команда test с соответствующими ключами проверяет необходимое условие;

o команда sleep служит для реализации задержки.

Программные конструкции Shell-программ:

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

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

Управление ресурсами в ОС UNIX

Управление ресурсами в ОС UNIX... ВВЕДЕНИЕ... Одной из задач любой операционной системы ОС является поддержание надежного и эффективного механизма управления...

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

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

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

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

Контpольные вопpосы
21. Что такое внутренние и внешние команды Shell-интерпретатора? Приведите примеры внутренних команд. 22. Какие существуют средства группирования команд? Приведите примеры использования.

Методические указания к лабораторной работе
Интерфейс между пользовательской программой и внешним устройством (или между двумя пользовательскими программами) в ОС UNIX осуществляется в рамках единой структуры данных, называемой файлом ОС UNI

Функции для работы с файловой системой
Возвращают дескриптор файла Преобразуют имя в описатель Назначают inode Работают с атрибутами Ввод/вывод из файла

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

Контpольные вопpосы
1. Какова структура описателей файлов, таблицы файлов, таблицы открытых файлов процесса? 2. Какова цепочка соответствия дескриптора файла, открытого процессом, и файлом на диске?

Методические указания к лабораторной работе
Для порождения нового процесса (процесс-потомок) используется системный вызов fork(). Формат вызова: int fork() Порожденный таким образом процесс представляет собой точную копию с

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

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

Методические указания к лабораторной работе
Механизм IPC (Inter-Process Communication Facilities) включает: средства, обеспечивающие возможность синхронизации процессов при доступе к совместно используемым ресурсам (семафоры -

I. Семафоры.
Для работы с семафорами поддерживаются три системных вызова: semget() для создания и получения доступа к набору семафоров; semop() для манипулирования значениями семафоров

II. Очереди сообщений.
Для обеспечения возможности обмена сообщениями между процессами механизм очередей поддерживается следующими системными вызовами: msgget() для образования новой очереди сообщений или

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

Int socket (int domain, int type, int protocol);
Параметр domain - домен связи, в котором будет использоваться сокет (значение AF_INET - для домена Internet (соединение через сеть), AF_UNIX

Связывание
Системный вызов bind() связывает сетевой адрес компьютера с идентификатором сокета. #include<sys/types.h> #include<sys/socket.h&

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

Подключение клиента
Для выполнения запроса на подключение к серверному процессу клиент использует системный вызов connect(). #include<sys/types.h> #inc

Пересылка данных
Для сокетов типа SOCK_STREAM дескрипторы сокетов, полученные сервером посредством вызова accept() и клиентом с помощью вызова socked(), могут испо

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