Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовая работа по Fedora Core / 2008-03-11-12-12-Екатерина-Fedora_наша.doc
Скачиваний:
45
Добавлен:
01.05.2014
Размер:
1.18 Mб
Скачать

Загрузочные параметры ядра

Рассмотрим основные параметры, которые модно задать ядру на начальной стадии загрузки. Большинство из них необходимы для сообщения ядру характеристики устройств, которые оно не может или не должно определить само.

Если ядро загружается средствами BIOS (например, с дискеты), то передать ему параметры невозможно: нужно использовать какой-либо загрузчик Linux.

Синтаксис строки параметров следующий:

имя [=значение1] [, значение2...] [имя2 [=значение2.1] [, значение2.2...] ]

Значения разделяются запятой без пробелов, а параметры — пробелами.

Пример строки параметров:

root=/dev/hdal ether=9,0x300,OxdOOOO,0xd4000,ethO

Параметры корневой файловой системы

Этот параметр сообщает ядру какое устройство будет использовано в качестве корневой ФС во время загрузки. По умолчанию, эта установка имеет значение корневого устройства системы, на котором было построено ядро. Например, если рассматриваемое ядро было построено в системе, в которой корневым разделом был `/dev/hda1', то по-умолчанию корневым устройством будет `/dev/hda1'. Чтобы изменить значение по-умолчанию и выбрать в качестве корневого устройства флоппи-диск, нужно использовать `root=/dev/fd1'.

Допустимыми корневыми устройствами могут быть следующие:

  1. /dev/hdaN до /dev/hddN, которые являются разделами N на ST-506 совместимом диске `от a до d'.

  2. /dev/sdaN до /dev/sdeN, которые являются разделами N на SCSI совместимом диске `от a до e'.

  3. /dev/xdaN до /dev/xdbN, которые являются разделами N на XT совместимом диске `от a до b'.

  4. /dev/fdN, т.е. привод флоппи-диска с номером N. Номер N=0 соответствует устройству DOS `A:', а N=1 -- `B:'.

  5. /dev/nfs, не являющееся реальным устройством, а флагом, заставляющим ядро получить корневую ФС по сети.

Также допускается более неуклюжая и менее совместимая числовая спецификация вышеперечисленных возможных дисковых устройств в формате major/minor (т.е. /dev/sda3 -- старший (major) 8, младший (minor) 3, таким образом, вы можете использовать в качестве альтернативы root=0x803).

Это один из немногих параметров загрузки ядра, которые хранят значение по-умолчанию в образе ядра и которые, таким образом, могут быть изменены утилитой rdev.

rо: требует монтировать корневую файловую систему в режиме только чтение. Используется по умолчанию;

rw: задает монтирование корневой файловой системы в режиме чтение/запись. При использовании этого параметра нельзя запускать программы типа fsck. Перед запуском программы fsck нужно перемонтировать корневую файловую систему в режиме rо.

Параметры загрузки управления памяти

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

  • Параметр `mem='

У этого параметра два назначения: изначально он использовался для указания объема установленной памяти (или меньшего значения, если вы хотите ограничить объем памяти, доступный Linux). Второе (и более используемое) назначение -- указать mem=nopentium, сообщающий ядру Linux не использовать функцию эффективности таблицы 4МБ страниц (4MB page table performance feature).

Подпрограмма BIOS, описанная в спецификации PC и возвращающая количество установленной памяти, была разработана для максимум 64 МБ. (Да, еще одно неточное предположение, как и с 1024 цилиндрами дисков... ох!) При загрузке для определения количества установленной памяти Linux использует эту подпрограмму . Если у вас установлено более 64 МБ памяти, вы можете использовать этот параметр загрузки, чтобы сообщить Linux о количестве имеющейся памяти. Ниже приведено высказывание Линуса об использовании параметра mem=.

«Ядро примет любое значение параметра `mem=xx', которое вы укажите, но если обнаружится, что вы солгали, то рано или поздно это приведет к ужасному краху. Параметр определяет самый верхний адрес ОЗУ, т.е., например, `mem=0x1000000' означает, что вы используете 16 МБ памяти. Для машины с 96 МБ это будет `mem=0x6000000'. Если вы сообщите Linux, что памяти имеется больше, чем установлено в действительности, случится неприятность: возможно не сразу, но, в конечном счете, обязательно».

Следует учесть, что аргумент не обязательно должен быть шестнадцатиричным, а для обозначения килобайтов и Мегабайтов можно использовать соответственно суффиксы `k' и `M' (регистр влияет). (`k' вызовет сдвиг вашего значения на 10 бит, а `M' - на 20 бит.) Типичным примером для машины с 128 МБ может быть "mem=128m".

Пример:

Иногда нужно указать объем ОЗУ, отличный от того, который имеется на самом деле. Например, у вас чипсет Intel 810 с интегрированной видеоплатой, тогда нужно указать объем ОЗУ на 1 Мб меньше (а иногда даже на 2 Мб). Это связано с аппаратной особенностью чипсета.

Объем установленной памяти можно указать с помощью параметра mem:

mem= <число>

Число определяет объем памяти, установленной в компьютере, например, mem=16384K или mem=16M.

  • Параметр `swap='

Он позволяет пользователю настраивать некоторые параметры виртальной памяти (VM), относящейся к своппингу на диск. Он может иметь следующие восемь значений:

MAX_PAGE_AGE

PAGE_ADVANCE

PAGE_DECLINE

PAGE_INITIAL_AGE

AGE_CLUSTER_FRACT

AGE_CLUSTER_MIN

PAGEOUT_WEIGHT

BUFFEROUT_WEIGHT

  • Параметр `buff='

Параметр, похожий на `swap=', позволяет пользователю настроить некоторые параметры, связанные с управлением буферной памятью. Он может имесь следующие шесть значений:

MAX_BUFF_AGE

BUFF_ADVANCE

BUFF_DECLINE

BUFF_INITIAL_AGE

BUFFEROUT_WEIGHT

BUFFERMEM_GRACE