Читаем Linux для пользователя полностью

• InputDevice - описания устройств ввода;

• Screen - конфигурация экрана;

• Device - описания графических карт;

• Monitor - описания монитора;

• Modes - описания видеорежимов;

• Files - пути к файлам;

• ServerFlags - опции сервера;

• VideoAdaptor - описание адаптера Xv (как сказано в интерактивном руководстве man, никто не говорит, что это такое, даже если знает!);

• Module - динамически загружаемые модули;

• DRI - конфигурация DRI;

• Vendor - установки для оборудования конкретных поставщиков (Vendor-specific configuration).

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

Секция ServerLayout имеет наивысший приоритет, т. е. именно с нее начинается анализ файла XF86Config при загрузке X-сервера. Эта секция определяет, какие устройства ввода/вывода будут использоваться в X-сессии. Устройства ввода - это клавиатура и мышь, которые задаются в секциях InputDevice (такие секции создаются отдельно для каждого устройства). Устройства вывода обычно состоят из нескольких независимых компонентов (графический адаптер и монитор), которые связываются воедино в секции Screen, на которую указывает ссылка в секции ServerLayout. Таким образом, секция ServerLayout должна содержать, как минимум, следующие строки:

Section "ServerLayout"

 Identifier "MainSection"

 Screen 0 "Screen0" 0 0

 InputDevice "Mouse0" "CorePointer"

 InputDevice "Keyboard0" "CoreKeyboard"

EndSection

Секция Screen определяет используемые монитор и видеоадаптер и задает режимы работы экрана. Она может иметь примерно такой вид:

Section " Screen"

 Identifier "Screen0"

 Device "Trident 3DImage985 (generic)"

 Monitor "ViewSonic|ViewSonic G771"

 DefaultColorDepth 24

 Subsection "Display"

  Depth 8

  Modes "1024x768" "800x600" "640x400"

  ViewPort 0 0

 EndSubsection

 Subsection "Display"

  Depth 16

  Modes "1024x768" "800x600" "640x480"

  ViewPort 0 0

 EndSubsection

 Subsection "Display"

  Depth 24

  Modes "1024x768" "800x600" "640x480"

  ViewPort 0 0

 EndSubsection

 Subsection "Display"

  Depth 32

  Modes "1024x768" "800x600" "640x480"

  ViewPort 0 0

 EndSubsection

EndSection

Как видите, она содержит указания на используемый графический адаптер (задается в секции Device с идентификатором "Matrox Millenium G200") и монитор (задается в секции Monitor с идентификатором "Monitor0").

Cекция Screen может содержать несколько подсекций (Subsection) Display, по одной такой подсекции на каждую глубину цвета. В каждой такой подсекции вы должны прописать те режимы монитора, которые будете использовать. Режимы задаются в строке Modes. Они указываются путем перечисления их наименований, взятых из секции Monitor (в точности в том виде, как эти названия указаны после слова Modeline). В одной строке можно перечислить любое число таких имен режимов. Первый из указанных режимов будет запускаться по умолчанию, в остальные можно будет переключаться (циклически), нажимая комбинацию клавиш ‹Ctrl›+‹Alt›+‹+› или ‹Ctrl›+‹Alt›+‹-› (используются клавиши ‹+› и ‹-› на цифровой клавиатуре).

В этой подсекции указывается также размер виртуального экрана, который будет использоваться сервером. Соответствующая строка имеет вид "Virtual xdim ydim", где xdim и ydim - размерности виртуального экрана. Например, вы можете иметь дисплей с разрешением 800* 600, а размер виртуального экрана задать равным 1024* 768. Тогда в каждый момент времени вы будете видеть на дисплее только часть полного изображения. Надо, однако, учитывать, что видеопамять должна хранить изображение, равное по размеру виртуальному экрану, а также то, что нежелательно занимать всю память хранением виртуального экрана, поскольку в этом случае не остается резерва на кэширование, что может повлечь потерю 30-40% производительности сервера.

Секция Monitor обычно начинается тремя строками, в которых указывается производитель монитора и его модель, однако если у вас только одна секция Monitor, то эти строки вполне могут иметь вид:

Identifier "Unknown"

VendorName "Unknown"

ModelName "Unknown"

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

HorizSync 30-70

VertRefresh 50-180

Для мульти-частотных мониторов с фиксированными частотами:

Перейти на страницу:

Похожие книги