Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Операционные системы. Лабораторный практикум

.pdf
Скачиваний:
2
Добавлен:
07.09.2026
Размер:
2 Мб
Скачать
☆
$ mv props/version1 version1
Предположим теперь, что вы сделали рабочим каталогом дочер­ний и хотите переместить файл из дочернего каталога в родительский. Как и в случае использования команды «ср», можно двумя точками обозначить родительский каталог.
$ mv имя файла ..
$ mv имя файла ../новое имя файла
Например, если props – ваш текущий рабочий каталог и вы хо­тите переместить файл version1 из props в его родительский каталог (в данном случае в начальный каталог пользователя), нужно вместо второго аргумента команды «mv» использовать две точки.
$ mv version1 ..
Если вы хотите дать файлу version1 в родительском каталоге но­вое имя, добавьте его ко второму аргументу через косую черту:
$ mv version1 ../oldprop
Фактически имя файла – это имя, предваренное путевым именем его каталога. При перемещении файла tuesday в каталог reports путе­вое имя изменилось. Полное имя файла tuesday изменилось с /home/chris/tuesday на /home/chris/reports/tuesday. Теперь его путевое имя включает название каталога reports.
Столь же свободно можно использовать абсолютное путевое имя. В следующем примере файл today перемещается в каталог reports и по­лучает новое имя, tuesday. Обратите внимание: абсолютное путевое имя используется в качестве аргумента и в команде «mv», и в команде «ls».
$ mv today /home/chris/reports/tuesday
$ ls /home/chris/reports
Как и команда «ср», команда «mv» позволяет одновременно пе­реместить из одного каталога в другой несколько файлов. Нужно только ввести имена этих файлов в командной строке. Последним всегда должно стоять имя нового каталога.
При создании списка имен файлов для команды «mv» можно использовать любые специальные символы. В следующем примере пользователь перемещает все файлы исходных текстов программ из текущего каталога в каталог newproj.
$ mv *.с newproj
Если вы хотите переместить все файлы из данного каталога в другой каталог, можно использовать обозначение *.* и получить список всех этих файлов. В следующем примере пользователь пере­мещает все файлы из каталога reports в каталог repbks.
$ mv reports/*.* repbks
71
Перемещение и копирование каталогов
Система Linux позволяет копировать и перемещать целые ката­логи. В качестве первого аргумента команды «ср» и «mv» могут ис­пользовать имя каталога, позволяя копировать и перемещать подката­логи из одного каталога в другой. Первый аргумент – имя переме­щаемого или копируемого каталога, а второй – имя каталога, в кото­рый он будет помещен. При перемещении и копировании каталогов действует та же структура путевых имен, что и при соответствующих операциях с файлами.
Подкаталоги можно так же легко, как и файлы, копировать из одного каталога в другой. Для копирования каталога команду «ср» необходимо использовать с опцией -г (сокращение от recursive, т. е. «рекурсивный»). Эта опция дает команде «ср» указание копировать каталог вместе со всеми его подкаталогами. Другими словами, копи­руется все поддерево каталогов, начиная с указанного. В следующем примере каталог thankyou копируется в каталог oldletters. После за­вершения этой операции начинают равноправно сосуществовать два подкаталога thankyou: один в каталоге letters, другой в oldletters.
$ ср -r letters/thankyou oldletters
$ ls -F letters
thankyou/
$ ls -F oldletters
thankyou/
Предположим, вы хотите скопировать не каталог, делая его тем самым подкаталогом другого каталога, а только все его файлы. Для копирования всех файлов из одного каталога в другой нужно указать имена этих файлов. Специальный символ * обозначает имена всех файлов и каталогов в данном каталоге. Для того чтобы скопировать все файлы из каталога letters в каталог oldletters, нужно в качестве первого аргумента поставить звездочку, и программа создаст список всех имен файлов, имеющихся в каталоге letters. Если нужно указать путевое имя первого аргумента, сделайте это, а звездочку поставьте в конце. В следующем примере все файлы из каталога letters копиру­ются в каталог oldletters. Для letters указано путевое имя, а звездочка в конце этого
имени обозначает все файлы в данном каталоге. $ ср letters/* oldletters Если вы хотите, чтобы операция копирования осуществлялась
и над подкаталогами, нужно указать опцию -r.
$ ср -r letters/* oldletters
72
Специальный символ ~
Вы уже знаете, как обозначать тильдой абсолютное путевое имя
начального каталога. Например, при копировании файла из ниже­стоящего каталога в начальный каталог тильдой можно обозначить абсолютное путевое имя начального каталога. В приведенном ниже примере пользователь переходит в каталог reports, а затем копирует из него файл monday в начальный каталог.
$ cd reports $ ср monday ~
Для того чтобы при копировании файла в начальный каталог
дать ему новое имя, поставьте новое имя после пары символов ~/. В следующем примере файл monday копируется в начальный каталог, и копия получает имя today.
$ ср monday ~/today В аргументах команды «mv» тильда используется точно так же.
Ниже показано, как файл monday перемещается из каталога reports в начальный каталог.
$ mv monday ~
Если при перемещении файла из нижестоящего каталога в на-
чальный вы меняете его имя, то перед новым именем файла ставится тильда с косой чертой, ~/. В следующем примере пользователь пере­ходит в каталог reports, а затем перемещает файл monday в начальный каталог и дает ему имя today.
$ cd reports $ mv monday ~/today Тильду можно использовать во всех случаях
, когда речь идет
о путевом имени начального каталога. В приведенном ниже примере описанные ранее команды «mv» и «ls» выполняются с тильдой.
$ mv weather ~/reports/monday $ ls ~/reports
Удаление файла: команда «rm»
В процессе работы с ОС Linux число используемых файлов
будет стремительно возрастать. Появляются новые файлы в этой сис­теме очень часто. Многие из них создаются при работе различных приложений, скажем, редакторов, и с помощью команд, например «ср». Постепенно некоторые из этих файлов устаревают. Их можно удалить посредством команды «rm». В следующем примере пользова­тель удаляет файл oldprop.
73
$ rm oldprop
Команда «rm» может быть использована с любым числом аргу-
ментов, что позволяет одновременно удалять несколько файлов. Имена этих файлов указываются в командной строке после имени команды.
$ rm proposal version1 version2
Командой «rm» следует пользоваться осторожно, так как отме-
нить ее действие нельзя. Если файл удален, восстановить его не уда­стся. Предположим, что вы случайно ввели эту команду вместо какой-то другой, например, «ср» или «mv». Когда вы опомнитесь, будет слишком поздно – файлы пропали. Для того чтобы избежать таких ошибок, используйте команду «rm» с опцией -i, которая ини­циирует выдачу запроса на подтверждение удаления. Теперь перед удалением каждого файла система будет спрашивать, действительно ли вы хотите удалить его. Если вы введете «у», файл будет удален. При любом ином ответе файл не удаляется.
Задания к лабораторной работе
1. Определить путевое имя рабочего каталога. Как обозначается
корневой каталог? Какое путевое имя получили (относительное или абсолютное)?
2. Создать в начальном каталоге два подкаталога. Просмотреть
содержимое рабочего каталога. Просмотреть содержимое родитель­ского каталога, не переходя в него.
3. Перейти в системный каталог. Просмотреть его содержимое.
Просмотреть содержимое начального каталога. Вернуться в началь­ный каталог.
4. Удалить созданные ранее подкаталоги.
5. Получить информацию по командам «ls» и «cd» с помощью
утилиты man. Изучить структуру man-документа.
6. Получить краткую информацию по командам «ls» и «cd»
с помощью команды «whatis» и «apropos». В чем различие?
7. То же, что и в п. 6, только с помощью команды «info».
8. Создайте в домашнем каталоге следующую структуру подка-
талогов (существующие каталоги не удаляйте):
домашний каталог ----|
|-ВашаФамилия-| |-1-|
74
|-2-| |-3-| |-4-|
9. Скопируйте файл /etc/group в каталог 1, используя абсолют-
ные имена копируемого файла и каталога назначения.
10. Скопируйте файл /etc/group в каталог 2, используя абсо-
лютное имя копируемого файла и относительное имя каталога на­значения.
11. Скопируйте файл /etc/group в каталог 3, используя относи-
тельные имена копируемого файла и каталога назначения.
12. Скопируйте файл /etc/group в каталог 4, используя абсолют-
ные имена копируемого файла и относительное имя каталога назна­чения с использованием специального символа ~.
13. При помощи одной команды зайдите в каталог 3.
14. Удалите файл group из каталога 4 при помощи одной команды.
15. Перейдите в свой домашний каталог. Удалите каталоги 1 и 4.
16. Выведите первые и последние 13 строк файла /etc/group.
Требования к отчету
Итоги лабораторной работы необходимо представить в виде по-
яснений и копий экранов выполнения заданий, описанных в методи­ческих указаниях.
Отчет должен содержать:
1. Название, цель и задачи лабораторной работы.
2. Краткую теоретическую часть.
3. Последовательность вызовов команд со всеми аргументами.
4. Выводы по результатам работы.
Контрольные вопросы и задания
1. Дайте определение понятию shell.
2. Какие версии shell существуют?
3. Опишите основную файловую структуру ОС Linux.
4. Где хранятся основные настройки системы?
5. Расскажите об абсолютном и относительном пути до каталога,
приведите пример.
6. Какие вы знаете основные команды для работы с файлами?
75
ЗАКЛЮЧЕНИЕ
В данном лабораторном практикуме были рассмотрены разделы
общей теории операционных систем, в которых основной целью было познакомить читателя с принципами построения, управления и функ­ционирования составных частей операционных систем общего назна­чения. В настоящем издании изложен «универсальный» материал, минимально связанный с конкретной разработкой и версией систем­ного программного обеспечения.
Операционные системы как область знаний высокотехнологич-
ной инженерии развивается очень быстро, поскольку ее развитие идет бок о бок с развитием микроэлектронных технологий. Подавляющее большинство компонентов операционных систем изменяются быст­рее, чем их описание попадает в печатные издания. Но, основные принципы архитектуры и функционирования операционных систем остаются неизменными довольно длительное время. Именно на них и делался основной упор при составлении данного курса.
Современные источники информации по системному ПО, за
редким исключением, дают возможность разобраться в настройках свойств пользовательского интерфейса конкретной операционной системы. Не часто встречаются источники, в которых освещены во­просы, связанные, например, с теорией управления процессами, а также другими аспектами, формирующими представление об опера­ционной системе, как о едином комплексе.
Данное издание, по мнению авторов, поможет сформировать
это представление, и будет полезно не только начинающему пользо­вателю.
76
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Артамонова, Н. В. Операционные системы для организации
производства в промышленности : учеб. пособие / Н. В. Артамонова. – СПб. : ГУАП, 2012. – 224 c.
2. Компьютерные науки. Деревья, операционные системы, сети /
И. Ф. Астахова, И. К. Астанин и др. – М. : Физматлит, 2013. – 88 c.
3. Дейтел, Х. М. Операционные системы. Основы и принципы.
Т. 1 / Х. М. Дейтел, Д. Р. Чофнес. – М. : Бином, 2016. – 1024 c.
4. Иртегов, Д. В. Введение в операционные системы / Д. В. Ир-
тегов. – СПб. : БХВ-Петербург, 2012. – 1040 c.
5. Карасева, М. В. Операционные системы : практикум для ба-
калавров / М. В. Карасева. – М. : КноРус, 2012. – 376 c.
6. Коньков, К. А. Устройство и функционирование ОС Windows :
практикум к курсу «Операционные системы» / К. А. Коньков. – М. : Бином, 2012. – 207 c.
7. Мартемьянов, Ю. Ф. Операционные системы. Концепции по-
строения и обеспечения безопасности : учеб. пособие для вузов / Ю. Ф. Мартемьянов, Ал. В. Яковлев, Ан. В. Яковлев. – М. : Горячая линия-Телеком , 2011. – 332 c.
8. Мертенс, П. Интегрированная обработка информации. Опе-
рационные системы в промышленности / П. Мертенс. – М. : Финансы и статистика, 2007. – 424 c.
9. Назаров, С. В. Современные операционные системы : учеб.
пособие /
367 c.
10. Партыка, Т. Л. Операционные системы, среды и оболочки :
учеб. пособие / Т. Л. Партыка, И. И. Попов. – М. : Форум, НИЦ «Ин­фра-М», 2013. – 560 c.
11. Синицын, С. В. Операционные системы : учебник для сту-
дентов учреждений высш. проф. образования / С. В. Синицын, А. В. Батаев, Н.
12. Спиридонов, Э. С. Операционные системы / Э. С. Спиридо-
нов, М. С. Клыков, М. Д. Рукин. – М. : Либроком, 2015. – 350 c.
С. В. Назаров. – М. : Бином. Лаборатория знаний, 2013. –
Ю. Налютин. – М. : Академия, 2012. – 304 c.
77
ПРИЛОЖЕНИЕ
Перечень ключевых слов
Администратор системы Адресация памяти Адресное пространство Активное состояние Архитектура ОС Асинхронные параллельные про­цессы Асинхронный ввод-вывод Ассоциативное отображение Блок управления процессом Блок управления файлом Блокирование памяти Буферизация Ввод-вывод Взаимоисключение Виртуальная память Внедрение и связывание объектов Внешнее прерывание Внешняя память Выполняющийся процесс Вытесняющая многозадачность Дефрагментация памяти Диспетчер Драйвер Иерархия памяти
Индекс Квант времени Критическая область (секция) Кэш-память Нить Обработчик прерываний Планирование без переключений Планирование с переключением Поток Прерывание Процесс Режим ядра Реестр Родительский процесс Свопинг Семафор Стратегия выборки Стратегия замещения Стратегия размещения Тупик Файловая система Фрагментация Шина Элемент контроля доступа Ядро
78
Учебно-практическое издание
Попов Анатолий Анатольевич
Шаталов Павел Сергеевич
Масюк Максим Анатольевич
ОПЕРАЦИОННЫЕ СИСТЕМЫ
Лабораторный практикум
Ответственный редактор
профессор, доктор технических наук Г. А. Доррер
79
Редактор П. С. Бороздов
Оригинал-макет и верстка М. А. Светлаковой
Подписано в печать 16.01.2020. Формат 60×84/16. Бумага офисная.
Печать плоская. Усл. печ. л. 4,9. Уч.-изд. л. 5,2. Тираж 50 экз.
Заказ С 18/20.
Санитарно-эпидемиологическое заключение
№ 24.49.04.953.П.000032.01.03 от 29.01.2003 г.
Редакционно-издательский отдел СибГУ им. М. Ф. Решетнева.
660037, г. Красноярск, просп. им. газ. «Красноярский рабочий», 31.
Отпечатано в редакционно-издательском центре
СибГУ им. М. Ф. Решетнева.
660049, г. Красноярск, просп. Мира, 82
80
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]