Материал: 6261

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

51

2.8 GRUB как универсальный загрузчик ОС

Проблема загрузки разных ОС с одного блочного устройства всегда будоражила умы пользователей ЭВМ, тем более, что емкость винчестеров постоянно увеличивалась. Хотя появились UEFI и структура блочных устройств GPT, имеется ряд проблем, в том числе и организационных, которые делают необходимым применение различных универсальных загрузчиков.

Наиболее распространенными загрузчиками ОС являются:

•NTLDR— загрузчик ядра MS Windows NT;

•Windows Boot Manager (bootmgr.exe, winload.exe) — загрузчик ядра MS Windows Vista; bootmgfw.efi — для MS Windows 7, 8, 8.1 и других;

•LILO (LInux Loader) — старый загрузчик ядра Linux;

•GRUB (Grand Unified Bootloader) — новый загрузчик ядра Linux и Hurd;

•RedBoot — загрузчик для встраиваемых систем;

•SILO (SPARC Improved bootLOader) — загрузчик Linux и Solaris для машин с архитектурой SPARC;

•Loadlin — загружает Linux из под MS DOS или MS Windows;

Syslinux — загружает Linux из под MS DOS или MS Windows;

BOOTP — применяется для загрузки по сети.

Среди перечисленного ПО, наиболее интересным является GRUB — официальный загрузчик Linux из проекта GNU. Он может загружать разные ОС, включая MS Windows, с многих разных аппаратных платформ. GRUB (точнее GRUB2) входит и в дистрибутив Arch Linux. Он устанавливается на ЭВМ в процессе инсталляции ОС. Это позволяет свободно использовать и Linux и MS Windows на одном компьютере.

Более подробно, вопросам работы с ПО GRUB посвящена лабораторная работа №2, которая входит в программу обучения по данной теме. В качестве дополнительного учебного материала, которым необходимо пользоваться как справочным пособием, является пособие [3, раздел 2].

52

2.9 Меню и функции GRUB

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

Среди основных функций GRUB следует выделить:

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

•умение работать со структурами MBR и GPT блочных устройств;

•поддержка работы со многими современными устройствами ЭВМ;

•распознавание и умение работать с многими современными файловыми системами;

•поддержка национальных языков и других мультимедийных средств ЭВМ;

•обнаружение на блочных устройствах ЭВМ наличия различных ОС и авто-

матическое формирование для них сценария меню загрузки.

Хотя не все функции GRUB работают одинаково эффективно, потенциал этого ПО является очевидным.

Основная часть ПО GRUB располагается в разделе блочного устройства и устанвливается в процессе инсталляции на него ОС Linux. По умолчанию, оно помещается в директорию /boot/grub, туда же помещается автоматически созданный файл конфигурации grub.cfg. Дополнительно, в процессе инсталляции ОС анализируется наличие UEFI и выполняется необходимая работа с ним.

Важно помнить, что дистрибутивы GRUB различаются для разных архитектур процессора ЭВМ, хотя допускается их смешанная установка на один компьютер. Также имеются варианты дистрибутивов для работы с ЭВМ, имеющими UEFI.

Замечание

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

Если на ЭВМ установлено несколько дистрибутивов ПО GRUB, то в процессе загрузки будет работать только один из них, хотя файл grub.cfg может быть общий.

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

53

2.10 Лабораторная работа по теме №2

Учебная цель данной лабораторной работы - закрепление теоретических знаний и получение практических навыков по теме 2 «BIOS, UEFI и загрузка ОС». Основным учебным пособием, необходимым для работы, является [3, раздел 2]. Данный раздел учебного пособия содержит материал, касающийся основных организационных мероприятий, обеспечивающих успешное выполнение работы. Ограничения, применительно к которым изложен данный методический материал:

•студент выполняет работу в учебном классе кафедны АСУ на компьютерах с

установленным ПО ОС УПК АСУ, имеющих базовое ПО BIOS и структуру загрузочных устройств MBR;

•студент имеет flashUSB с установленным ПО GRUB2 и архивом рабочей области пользователя upk по данной дисциплине;

•студент успешно выполнил лабораторную работу №1 и способен звпустить

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

Исходные организационные мероприятия:

•студенты разбиваются парами (можно больше), каждая из которых имеет

устройство flashUSB с минимальным объемом ПО, подготовленным преподавателем на лабораторной работе №1;

•каждой паре доступна ЭВМ с запущенным ПО ОС УПК АСУ и учебный материал данного руководства;

•вопросы вариантов выполнения данной работы разрешаются преподавателем индивидуально.

2.10.1 Установка ПО GRUB на устройство flashUSB

Изучается три подраздела методического пособия [3, подразделы 2.1-2.3]. Изучается подраздел 2.4 методического пособия [3], учитывая возможные особенности исполнения работ в среде пользователя upk.

Выполняется установка ПО GRUB2 на flashUSB пары, на которых оно отсутствует. Пары разделяются по отдельным компьютерам, запускают ОС УПК АСУ и заполняют личные отчеты по выполненной части работ. Отчет заполняется в плане всех вопросов, изложенных в пособии [3, подразделы 2.1-2.4].

Проводится индивидуальный перезапуск ОС УПК АСУ с целью проверки качества исполнения проведенной части работы.

Замечание

По результатам выполнения этой части работы, все студенты должны иметь личные flashUSB с установленным на них рабочим ПО GRUB2.

54

2.10.2 Создание аварийного варианта ОС УПК АСУ

Изучается подраздел методического пособия [3, подраздел 2.5].

Выполняется установка ПО аварийного варианта ОС УПК АСУ на flashUSB студента.

Студенты, имеющие персональные компьютеры и желающие проводить на них учебные работы, дополнительно устанавливают аварийный вариант ПО ОС УПК АСУ на диск С: своих ЭВМ.

Заполняется личный отчет по выполненной части работы, в плане всех вопросов, изложенных в пособии [3, подраздел 2.5].

Замечание

Аварийный вариант дистрибутива ОС УПК АСУ не содержит графической оболочки и находится в директории: /usr/lib/upkasu/flashUSB

Необходимо полностью скопировать содержимое этой директории в корень личного устройства flashUSB студента.

2.10.3 Практика настройки файла конфигурации grub.cfg

Изучается подраздел методического пособия [3, подраздел 2.6]. Выполняются эксперименты с настройками файла grub.cfg.

Студенты, установившие аварийный вариант ПО ОС УПК АСУ на свою ЭВМ, выполняют модификацию первого пункта меню в файле grub.cfg, применительно к запуску ОС со своего комьютера, и проводится экспериментальная проверка выполненой работы.

Заполняется личный отчет по выполненной части работы, в плане всех вопросов, изложенных в пособии [3, подраздел 2.6].

Выполняется создание архива и его перенос на личный flashUSB, а также все мероприятия по завершению лабораторной работы №2.

Замечание

Студенты, выполняющие работу на личных ЭВМ, имеющих UEFI, выполняют эту часть работы с преподавателем.

55

3 Тема 3. Языки управления ОС

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

Чтобы учебный материал получил должный уровень конкретизации, он опирается на практическую часть задач загрузки ОС УПК АСУ, изложенных в [3] и доступных в виде файла upk_asu.pdf на рабочем столе пользователя upk.

3.1 Языки программирования и командные интерпретаторы

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

Сдругой стороны, язык С также сильно привязан к архитектуре ЭВМ и ОС:

•через машинный язык, в который компилируется исходный текст языка С, исполняющийся конкретным процессором;

•через структуру исполняемых программ, которые определяются ОС;

•через библиотеку libc, связывающую, через системные вызовы, ПО режима

пользователя с ПО ядра ОС.

Очевидно, что язык С мало пригоден для создания масштабных приложений. Для этих целей используются языки объектно-ориентированного программирования (ООП), такие как С++, C#, Java и другие.

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

Целевое назначение ОС — создание виртуальной машины или среды исполнения

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

Все ОС, для целей управления ПО ЭВМ, используют специальные языки программирования, которые называются командными интерпретаторами или shell:

•ОС MS Windows, в качестве shell, использует язык batch или cmd.

•ОС Linux — bash (Bourne Again Shell) и sh (Bourne Shell).

•ОС UNIX — sh (Bourne Shell), csh (C Shell), ksh (Korn Shell), tcl и другие.

Источник: https://studfile.net/preview/16438529/