Лабораторная работа знакомство с ос linux

Содержание. Лабораторная работа 1 Знакомство с операционной системой Linux. 4 - PDF

лабораторная работа знакомство с ос linux

Знакомство с процессом загрузки ОС CentOS. Опубликовано: 7 Декабрь, в разделе: Лабы. Итак, приступаем к первой лабораторной работе, посвященной процессу загрузки ОС CentOS. Версия ядра Linux (Linux version). Лабораторная работа №1 «Знакомство с ОС Linux». Цель работы: изучить конфигурацию локальной сети, которую планируется настроить в ходе. Операционная система Linux. Лабораторная работа №1: Знакомство с операционной системой. Кафедра ЮНЕСКО по новым информационным.

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

Максимальная длина имени файла варьируется в разных системах и зависит скорее от используемой файловой системы, чем от самой ОС. Обычно можно использовать достаточно длинные имена файлов до символов. Максимальный размер файла в файловой системе также зависит от ее типа. Для современных файловых систем размер файла более 4 Гбайт не является проблемой.

Как отмечалось выше, прописные и строчные буквы в системе Unix различаются. При этом файлы, отличающиеся только регистром букв, могут находиться в одном каталоге. В отличие от системы MS-DOS, знак точки является обычным символом, допустимым в любом месте имени файла, а такого понятия, как расширение имени файла, строго говоря, в системе Unix.

Тем не менее, последние части имен файлов, отделенные от остальной части имени точками, часто указывают на тип файла. Точка, являющаяся первым символом имени файла или каталога, имеет особое значение: Этим часто пользуются для именования служебных файлов, на которые не имеет смысла обращать особое внимание. Просмотр и интерпретация прав доступа к файлам ОС семейства Unix традиционно многопользовательские системы. Человек, зарегистрированный в учетных файлах системы и, 25 21 следовательно, имеющий учетное имя, называется зарегистрированным пользователем системы.

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

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

лабораторная работа знакомство с ос linux

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

В атрибутах доступа к файлам, перечисленные типы прав доступа могут быть предоставлены для трех классов пользователей: Набор прав доступа для конкретных файлов можно просмотреть с помощью команды ls -l. Набор букв и прочерков в левой части определяет тип файла первый символ и права доступа к файлу остальные девять символов. В приведенном примере первая запись относится к каталогу первая буква d и демонстрирует права доступа rwxrwxr-x.

Вторая запись относится к обычному файлу прочерк на месте первого символа и показывает права rw-r Девять символов прав доступа определяют возможность чтения rзаписи w и выполнения x для владельца файла первые три символагруппы владельца следующие три символа и всех остальных последние три символа. Прочерки означают отсутствие соответствующих прав. Следовательно, в приведенном примере john и все пользователи группы users могут просматривать и изменять содержимое каталога newdir, а также переходить в него, а остальные пользователи могут читать и переходить в этот каталог, но не могут создавать или удалять в нем новые файлы; john может читать и изменять файл archive Кроме символьного представления прав доступа часто используется цифровая форма.

В цифровом представлении права доступа составляются из трех восьмеричных цифр, каждая из которых определяет набор из трех битов полномочий rwx. Чтобы перевести права доступа из символьного представления в числовое, следует: Права доступа так же можно числовой форме путем суммирования восьмеричных значений отдельных битов прав доступа владелец имеет право на чтение; владелец имеет право на запись; владелец имеет право на выполнение; группа имеет право на чтение; группа имеет право на запись; группа имеет право на выполнение; остальные имеют право на чтение; 27 23 остальные имеют право на запись; остальные имеют право на выполнение.

Можно заметить, что для прав доступа rw-r получим: Типы файлов В ОС Unix имеются следующие основные типы файлов обычные файлы regular files ; каталоги directories ; символьные ссылки symbolic links ; файлы физических устройств device files ; именованные каналы named pipes ; доменные гнезда sockets. Обычные файлы используются наиболее широко и представляют собой именованные наборы данных с возможностью произвольного доступа.

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

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

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

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

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

Для системы это указание называется точкой монтирования.

лабораторная работа знакомство с ос linux

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

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

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

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

В случае ее использования без аргументов, команда выведет информацию о текущем пользователе. Если же указать в качестве аргумента имя зарегистрированного пользователя, вывод команды будет соответствовать указанному пользователю. Частным случаем команды id является команда groups. Она выдает список имен всех групп, в которые включен текущий или указанный пользователь. Ввод команды who без аргументов позволяет получить список пользователей, работающих в данный момент в системе.

Если же набрать whoami, система выведет информацию о текущем пользователе. Группой владельца по умолчанию становится основная группа регистрации пользователя. Для изменения владельцев предназначена стандартная команда chown change owner. Однако в современных системах владельца файлов может изменять только привилегированный пользователь root. У обычного пользователя существует возможность изменения только группы владельцев, и то лишь в пределах тех групп, в которые входит сам пользователь.

Для изменения группы владельцев удобно использовать команду chgrp change group. SYS же относиться к ядру Kernel и должен всегда выполняться. EXE Пользовательская среда, содержащая такие компоненты, как Панель задач, Рабочий стол и тому подобное. Его практически всегда можно закрывать и снова открывать без каких-либо последствий. С помощью панели управления возможно без использования данного процесса безо всяких проблем переключать раскладку клавиатуры.

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

EXE Отвечает за службу планирования Schedule, которая предназначена для запуска различных приложений в определённое пользователем время. EXE 28 29 Диспетчер сеансов запускает высокоуровневые подсистемы и сервисы. Процесс отвечает за различные действия, например запуск Winlogon и Win32 процессов, а также за операции с системными переменными.

1. ЛАБОРАТОРНАЯ РАБОТА 1. ПРАКТИЧЕСКОЕ ЗНАКОМСТВО С ОПЕРАЦИОННОЙ СИСТЕМОЙ UNIX

Когда Smss определяет, что Winlogon или Csrss закрыты, он автоматически выключает систему. EXE Обеспечивает создание очереди на печать, временно сохраняя документы и факсы в памяти. Поэтому иногда работают одновременно несколько Svhost. EXE Процесс управления системными службами.

Запуск, окончание, а также все остальные действия со службами происходят через. Нужен он, правда, всего лишь для мониторинга процессорных ресурсов, не используемых другими программами. EXE Процесс диспетчера задач, закрывать который крайне не рекомендуется. EXE 29 30 Отвечает за управление процессами авторизации пользователей. EXE Основной компонент клиентской службы Windows. Процесс запускается одновременно с первыми клиентскими приложениями и выполняется при любом запросе служб.

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

Различия между способами взаимодействия определяются следующими критериями: Совместно используемая память Простейшим способом взаимодействия процессов является совместный доступ к общей области памяти. Это выглядит так, как если бы два или более процесса вызвали функцию malloc и получили указатели на один и тот же блок памяти. Когда один из процессов меняет содержимое памяти, другие процессы замечают это изменение. Быстрое локальное взаимодействие Совместное использование памяти самый быстрый способ взаимодействия.

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

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

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

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

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

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

лабораторная работа знакомство с ос linux

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

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

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

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

Ей следует передать адрес, возвращаемый функцией shmat. Если текущий процесс был последним, кто ссылается на сегмент, сегмент удаляется из памяти. Функция exit и exec автоматически отключает сегменты. Контроль и освобождение совместно используемой памяти Функция shmctl возвращает информацию о совместно используемом сегменте и способна модифицировать.

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

Функция exit и exec отключают сегменты, но не освобождают. Команда ipcs выдает информацию о взаимодействии процессов, включая сведения о совместно используемых сегментах для этого следует задать флаг -m. Например, в показанном ниже случае сообщается о том, что используется один такой сегмент, с номером: Набрать код и произвести компиляцию примера программы. Разобраться с функциями, системными вызовами и командами.

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

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

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

Параметр fd является указателем на массив из двух целых переменных. При нормальном завершении вызова в первый элемент массива fd[0] будет занесен файловый дескриптор, соответствующий выходному потоку данных pip а и позволяющий выполнять только операцию чтения, а во второй элемент массива fd[1] будет занесен файловый дескриптор, соответствующий входному потоку данных и позволяющий выполнять только операцию записи.

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

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

лабораторная работа знакомство с ос linux

Проанализируйте результаты 42 43 Лабораторная работа 11Изучение файловой системы Linux Общие сведения Linux многопользовательская, многозадачная операционная система с разделением времени.

В любой момент в системе выполняется множество процессов,каждый процесс принадлежит некоторому пользователю. Пользователь это объект обладающий определенными правами в системе. Каждый пользователь идентифицируется уникальным идентификатором пользователя UID useridentifier.

Пользователю присваиваются имя и пароль. Пользователь с UID 0 root обладает неограниченными правами.

Лабораторные работы | Открытое программное обеспечение

В Линукс как впрочем и в других unix-системах оболочки могут быть различными, однако чаше всего используются различные варианты sh от shell - bash, tsh, zh и. Оболочки в той или иной степени упрощают работу пользователя, представляя такие возможности, как автоподстановка текста, история ввода, встроенные скриптовые языки.

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

Информацию о командах вы можете получить через встроенную справочную систему формата man от manuals или info.

Лабораторная работа №1. Установка ОС Linux. Установка базовых компонент ядра.

Для получения справки достаточно ввести man или info с именем нужной команды в качестве параметра: Выход из справочной системы в командную строку выполняется клавишей q[uite]. Некоторым неудобством встроенной справочной системы man является то, что далеко не вся информация локализована, то есть переведена с английского языка.

Частичным решением этой проблемы является справка формата info, которая, однако, имеется не для всех команд и менее подробная. Еще одна возможность получения информации о команде - это выполнение ее с параметром --help. Выдает информацию о FILE текущий каталог по умолчанию. Сортирует в алфавитном порядке если ни один из ключей -cftuSUX --sort не задан.

Завершение работы Первые Unix-подобные ОС создавались в расчете на длительную работу без выключения компьютера. ОС Линукс - не исключение и завершение работы компьютера с ОС Линукс имеет некоторые особенности, которые в общем-то, зависят от конфигурации системы. Как правило, полное выключение может выполнять только суперпользователь по команде shutdown.

  • Открытое программное обеспечение: Лабораторные работы
  • ЛР №1. ОС Linux. Первое знакомство
  • Операционная система Linux. Знакомство с операционной системой

По команде shutdown в зависимости от параметров система может быть остановлена в указанное время с предварительной рассылкой сообщения.