В 4.3 BSD и более ранних системах утилиты sysctl conf, которым была нужна информация от ядра, открывали специальное устройство /dev/kmem, которое предоставляло доступ к памяти ядра. Используя список имен из двоичного файла ядра, утилиты искали адрес нужного символа и читали значение в этом месте. Утилиты с привилегиями суперпользователя могли также использовать эту методику для изменения sysctl переменных ядра.
Запуск и выключение
При включении компьютера нет выполняющихся на процессоре задач. Чтобы запустить программу, с устройства хранения в память должен быть загружен двоичный образ программы. Многие системы автоматически запускают программы, находящиеся в энергозависимых устройствах, таких, как постоянные запоминающие устройства (read-only memories - ROM). После загрузки образа программы процессор должен получить указание начать выполнение с начального адреса загруженной программы. Этот процесс начальной загрузки (bootstrapping) программы на исполнение начинает работу процессора с программой.
Здесь вы найдете информацию, как осуществляется начальная загрузка ядра FreeBSD или любой другой аналогичной программы. А также узнаете о работе системы на фазе инициализации, которая переводит систему с холодного старта в точку, когда можно запускать пользовательские программы. Также будут исследованы темы, которые связаны с процедурой запуска. Эти темы включают конфигурирование ядра для загрузки изображения, выключение работающей системы и отладку системных сбоев.
Отладка системы FreeBSD. Отладчик GDB
FreeBSD предоставляет несколько возможностей для отладки системных сбоев и отладки системы - GDB. Чаще всего используемым средством для отладки системы является аварийный дамп (crash dump): копия памяти, которая сохраняется ядром во вторичном хранилище, когда возникает катастрофический сбой. Аварийные дампы создаются процедурой doadump().
Автоматическая перезагрузка и выключение системы
FreeBSD предоставляет несколько вспомогательных программ для остановки или автоматической перезагрузки системы или для смены режима работы системы с многопользовательского в однопользовательский. Безопасная остановка и перезагрузка системы требуют поддержки ядра. Эта поддержка предоставляется системным вызовом reboot.
Конфигурация ядра FreeBSD (Linux)
Программное обеспечение, составляющую конфигурацию ядра FreeBSD (Linux), определяется файлом конфигурации ядра, который интерпретируется программой /usr/sbin/config, которая, в свою очередь, вызывается как часть процесса построения ядра. В FreeBSD процесс построения ядра стал значительно более сложным и теперь контролируется набором целей Makefile.
Программа /usr/bin/login
Программа login отвечает за регистрацию пользователя в системе; она обычно вызывается /usr/libexec/getty с именем пользователя, который хочет войти в систему, login freebsd запрашивает у пользователя пароль (после отключения режима эхо терминала, если это возможно).
Еще статьи...
Страница 1 из 4
Запуск и выключение