CITKIT.ru - свободные мысли о свободном софте
Деловая газета CitCity.ru Библиотека CITForum.ru Форумы Курилка
Каталог софта Движение Open Source Дискуссионный клуб Дистрибутивы Окружение Приложения Заметки Разное
17.09.2019

Последние комментарии

ОСТОРОЖНО: ВИНДОФИЛИЯ! (2250)
24 December, 22:53
Kubuntu Feisty (15)
24 December, 18:42
Один на один с Windows XP (3758)
24 December, 11:46

Каталог софта

Статьи

Дискуссионный клуб
Linux в школе
Open Source и деньги
Open Source и жизнь
Windows vs Linux
Копирайт
Кто такие анонимусы
Лицензии
Нетбуки
Нужен ли русский Linux?
Пользователи
Дистрибутивы
Идеология
Выбор дистрибутива
Archlinux & CRUX
Debian
Fedora
Gentoo
LFS
LiveCD
Mandriva
OpenSolaris
Slackware
Zenwalk
Другие линуксы
BSD
MINIX
Движение Open Source
История
Классика жанра
Окружение
shell
Библиотеки UI
Графические среды
Шрифты
Приложения
Безопасность
Управление пакетами
Разное
Linuxformat. Колонки Алексея Федорчука
Заметки
Блогометки
Файловые системы
Заметки о ядре

Дистрибутивы :: BSD :: FreeBSD

Что надо иметь
1. "Железо" для леди Free

CITKIT.ru

Страницы: предыдущая :: 1 :: 2 :: 3 :: следующая

Как говорилось в историческом очерке, во FreeBSD поддерживается несколько различных типов процессоров, как "живых", так и "мёртвых". Однако для нас практический интерес представляют только так называемые x86-совместимые процессоры, как в 32-битном, так и в 64-битном вариантах.

Нетрудно догадаться, что FreeBSD для архитектуры i386 поддерживает их все — как ныне живующие Intel Pentium4, Core, Core 2, Sempron, Athlon и так далее, так и реликтовые или нишевые Cyrix, Transmeta, Via. А в своём варианте для архитектуры AMD64 — все процессоры с 64-битными инструкциями, как от AMD, так и от Intel.

Во избежание недоразумений ещё раз подчеркну, что FreeBSD для архитектуры i386 работает на всех x86-совместимых процессорах, как 32-битных, так и 64-битных. Вопрос же выбора для последних предпочтительного варианта — i386 или AMD64, — не "хардверный", а "софтверный", и потому мы рассмотрим его в следующей главе.

Как известно, почти все ныне продаваемые процессоры являются не только 64-битными — точнее, поддерживают набор 64-битных инструкций, известный под именами AMD64 или EM64T, хотя это одно и то же. Но более того, практически все они также двух- трёх- и четырёхядерные — то есть выглядят для системы как два, три или четыре отдельных процессора. Я уж не говорю о том, что процессоры от Intel еще и виртуально-двухпроцессорные за счёт так называемой технологии HyperThreading'а — но ажиотаж с этим спал настолько, что об этом часто не считают нужным даже упоминать.

Чтобы многопроцессорность реально использовалась в работе, требуется поддержка со стороны операционной системы (точнее, её ядра). И таковая во FreeBSD имеется. Более того, современные её версии по умолчанию устанавливаются с ядром, поддерживающим SMP (Symmetric Multiprocessing — есть и иные формы использования мультипроцессорности, но для нас это не важно).

Только не нужно ожидать от многопроцессорности не то чтобы двух- или четырехкратного, но и даже сколько-нибудь заметного прироста производительности при обычной работе: на большинстве пользовательских приложений его не будет вовсе. Однако на некоторых задачах многопроцессорность повышает быстродействие существенно.

Одна из таких задач — компиляция программ из исходных текстов, что для пользователя FreeBSD часто является вполне рядовой повседневной процедурой. Причём такой, которой, как мы увидим впоследствии, иногда целесообразно заняться сразу после установки. Так что поддержка SMP в это время может не только потешить тщеславие пользователя мощью его новенького Intel Core 2 Quad или AMD Phenom, но и принести практическую пользу.

С поддержкой чипсетов во FreeBSD также вопросов нет: в каждый момент времени её стабильные версии поддерживают все одновозрастные с ней чипсеты — что от Intel, что от Nvidia или ATI/AMD. Правда, время от времени на этом фронте возникают проблемы. Примером могут быть коллизии с некоторыми чипсетами Nvidia или новыми чипсетами Intel, когда последняя отказалась от нативной поддержки PATA в своих южных мостах. Однако они были свойственны абсолютно всем ОС. Только в Windows такие проблемы решались за счёт драйверов к материнским платам, поставляемых их производителями, а во FreeBSD или Linux — силами сообщества, надо заметить, достаточно быстро. А до того момента, как эти проблемы разрешались, и в Linux, и во FreeBSD всегда были доступны "обходные пути" типа отключения функции программируемого контроллера прерываний (APIC) в BIOS или непосредственно при загрузке ОС.

Надо заметить, что проблемы с чипсетами очень редки в стабильных ветках FreeBSD; обычно они возникают в снапшотах, пре-релизах и ветках current. Каковые, надо заметить, для того и существуют, чтобы эти проблемы выявлять и устранять. Так, на протяжении некоторого времени дистрибутивы FreeBSD разрабатываемых версий (что 7.1, что 8.0) в 64-битном исполнении категорически отказывались грузиться с CD-приводов с интерфейсом SATA. Однако с выходом версии 7.1-BETA эта проблема волшебным образом исчезла.

Далее, существовала и, насколько мне известно, существует и по сей день проблема с "полухардверными" RAID-контроллерами (и PATA, и SATA), встраиваемыми в южные мосты чипсетов от Intel. Аналогичные неприятности бывали и с контроллерами ATA-RAID от сторонних производителей, вроде Promise. Однако, поскольку я таковые не использую, достоверной информацией о положении дел сегодня я не имею. И в любом случае, подсоединённые к таким контроллерам винчестеры, отказываясь восприниматься как аппаратный RAID, прекрасно функционировали как обычные накопители (в том числе, и как загрузочные устройства).

Про поддержку памяти и упоминать как-то неловко — вся она поддерживается, вне зависимости от типа и прочего. Единственная оговорка касается только её количества, и то лишь для архитектуры i386. Однако тут придётся сделать некоторое отступление.

Как известно, на 32-битной платформе теоретически может быть адресовано 4 Гбайт оперативной памяти. И это ограничение было действенно до тех пор, пока Intel не ввела в своих процессорах PentiumPro механизм PAE (Physical Address Extend), то есть расширение разрядности памяти 36-бит, дающее возможность адресовать на 32-битных процессорах до 64 ГБайт памяти. Правда, приложения при этом остаются 32-битными, то есть ни одно из них доступа к памяти более 4 Гбайт не получит.

В скором времени поддержка PAE появилась и в операционных системах — как Linux, так и FreeBSD (вероятно, есть она и в других BSD-системах, и, подозреваю, также и в Windows) — для её включения в 32-битных вариантах этих ОС (вне зависимости от разрядности процессора) требуется лишь пересборка ядра с соответствующей опцией.

Однако, если в Linux ядро с PAE, как показывает практика (например, описанная здесь), функционирует очень даже исправно, то во FreeBSD включение опции PAE в ядре накладывает ограничение и на ряд других параметров его конфигурации, что не всегда может быть желательно. И потому фактически объем памяти во FreeBSD для архитектуры i386 таки окажется ограниченным 4 Гбайтами. А практически этот предел ляжет ещё ниже — около 3-3,2 Гбайт. Ведь немалое количество адресов памяти из "четвёртого гигабайта" еще со времен создания собственно процессора 80386 было зарезервировано для прямого обращения к ним устройств, а с появлением технологии AGP и затем PCI-E — и под разделяемую видеопамять. И эти ограничения, насколько я знаю, не обойти даже при наличии дискретной видеоподсистемы с памятью собственной, вне зависимости от объёма последней. Так что при подборе дистрибутива в следующей главе нам к этому вопросу ещё придётся вернуться.

А пока от разделяемой видеопамяти плавно перебрасываем мостик к видеоподсистеме вообще. Которая, будучи последним компонентом "железа" необходимого, в свою очередь, знаменует переход к предметам роскоши. Почему? Сейчас увидим.

Дело в том, что с точки зрения обеспечения базовой функциональности FreeBSD поддерживает любые видеокарты, соответствующие стандарту VESA. Точнее, не сами видеокарты, а чипы, на которых они построены — в последнее время их всё чаще называют графическими процессорами; и действительно, они обладают вычислительной мощностью, недостижимой ещё недавно для процессоров центральных, да и стандартным ныне для дискретных видеокарт 256-512 Мбайт памяти ещё несколько лет назад мог бы позавидовать обладатель настольного десктопа.

Однако я отвлёкся... Так вот, любой VESA-совместимый видеочип будет обеспечивать работу FreeBSD (а когда выпускались чипы, несовместимые с VESA, не припомнят даже профессиональные старожилы, которые только и делают, что чего-то не припоминают). Разумеется, в консоли — хотя и не обязательно в чисто текстовом режиме: ныне во FreeBSD вполне поддерживается так называемая графическая консоль, носящая название пиксельного режима (pixel mode) — это то же самое, что в Linux'е называется VESA-режимом фреймбуфера.

Всё же, что выходит за рамки консольного режима FreeBSD, прямого отношения к этой ОС не имеет, являя собой сферу компетенции оконной системы X (или просто Иксов, как их называют в народе). И для Иксов существуют собственные драйверы видеочипов, обеспечивающие поддержку работы последних в графическом режиме.

Как мы знаем, всё многообразие видеокарт, существовавших до определённого времени, ныне свелось практически к чипам от трёх производителей — Intel, Nvidia, ATI/AMD (рудименты типа Matrox или SiS в расчёт можно уже не принимать).

Так вот, для чипов от каждой из этих серий в Иксах существуют собственные драйверы (как, впрочем, и для практически всех чипов, выпускавшихся человечеством в прошлом). Эти драйверы открыты, свободны и абсолютно одинаковы и для FreeBSD, и для Linux'а (и для любой ОС, поверх которой Иксы в принципе способны работать); точнее, не одинаковы, а просто одни и те же (с поправкой на версию X-сервера). Они обеспечивают базовую 2D-функциональность всей линейки от данного производителя — разве что, за исключением последних моделей, поддержку которых в драйверы X-сервера просто не успели включить.

Или, по крайней мере, должны обеспечивать: время от времени бывают моменты, когда драйверы от текущей версии X-сервера способны поддержать для новых карт от Nvidia или ATI только стандартный VESA-режим (800x600 при 16 цветах), работать в котором можно медленно и печально (а подчас не можно вообще). С видеочипами от Intel (или видеомодулями, интегрированными в северный мост Intel'овских чипсетов) такого практически не бывает: их спецификации полностью открыты, и Иксовые драйвера для них создаются сообществом при помощи и участии Intel'овских программистов.

А вот для чипов от остальных двух производителей в таких случаях приходится ставить фирменные драйвера их собственного производства. Которые, кроме всего прочего, обеспечивают также поддержку 3D-графики — драйверы от Иксов, как уже говорилось, обеспечивают только базовую 2D функциональность.

И вот тут FreeBSD Linux'у явно проигрывает. Потому что фирменный драйвер включает два компонента — чисто Иксовый, от платформы не зависящий, и ОС-зависимый модуль ядра. Последний же оба производителя распространяют исключительно (ATI/AMD) или в основном (Nvidia) для Linux, а закрытый характер драйвера мешает воспроизвести его аналог для FreeBSD. Правда, Nvidia последнее время выпускает свои драйверы и в версии под FreeBSD, но только под архитектуру i386 (и это нам тоже придётся учесть в следующей главе).

Справедливости ради, надо сказать, что ситуации, когда штатные Иксовые драйвера не справляются с поддержкой видеочипов, по крайней мере, предпоследнего "разлива", делая установку фирменных драйверов необходимостью, бывают достаточно редко. Так, в данный исторический момент сервер Xorg версии 1.4 и выше, вместе с прилагающимися драйверами, поддерживает все видеочипы, с которыми мне приходилось сталкиваться — как интегрированные, так и дискретные. Правда, за новинками в этой области ни я, ни мои коллеги никогда не гонялись...

Так что в большинстве случаев потребность в фирменных драйверах возникает всё-таки для задействования 3D-функций видеоподсистемы. Каковые реально требуются почти исключительно в играх и для трёхмерных украшательств в композитных оконных менеджерах. Значит, эту сторону поддержки видеоподсистемы можно спокойно отнести к категории "архитектурных излишеств".

Еще одна область поддержки "железа", пограничная между "архитектурной необходимостью" и "архитектурными излишествами" — работа внешних накопителей с интерфейсами разного рода, каковыми на данном этапе выступают USB, FireWire и eSATA. С одной стороны, это безусловная "архитектурная необходимость": банальные флэшки сейчас являются наиболее простым, универсальным и дешёвым способом переноса данных (наряду с передачей по сети), низводя CD- и DVD-диски до роли носителей дистрибутивов или спасательных дискет прошлого. Внешние же винчестеры, приблизившись по ёмкости и быстродействию к своим встроенным собратьям и утратив свойственную им когда-то заоблачную стоимость, оказываются ныне столь же простым, универсальным и дешёвым средством для резервного копирования, вытеснив любые компакты и из этой сферы их применения, некогда весьма важной.

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

Благо проблем с поддержкой внешних накопителей, в том числе, и сколь угодно "горячего" подключения во FreeBSD не существует. Сразу после подключения к соответствующему разъему внешние диски с интерфейсом eSATA будут выглядеть для неё обычными SATA-дисками, любые USB-накопители (в том числе и камерные) — как диски SCSI. Судя по всему, последнее относится и к дискам с интерфейсом FireWire, хотя в наших условиях они обычно не актуальны.

Бывают случаи, когда накопители цифровых камер, хотя и опознаются системой как USB-устройства, не доступны с помощью стандартного монтирования. Однако эта проблема не имеет отношения непосредственно к FreeBSD и связана с особенностями USB-интерфейса самих камер. Решается она считыванием носителей через внешние кард-ридеры, как это подробно описано в соответствующей статье.




Страницы: предыдущая :: 1 :: 2 :: 3 :: следующая

Комментарии

Страницы комментариев: 1 :: 2 :: следующая

аноним, Sun Jan 4 19:36:23 2009:
аноним, воскресенье, 4 января 2009 г. 17:21:09:
они являются по отношению к компьютеру шлюзом по умолчанию

Dsl может преобразовывать сетевые адреса? И по какому умолчанию? natd не надо запускать?
аноним, Sun Jan 4 18:49:27 2009:
2 аноним, воскресенье, 4 января 2009 г. 17:21:09:

в принципе идеальный вариант для любой системы

>Что касается DSL-устройств

так не зря же над Федорчуком посмеиваются:P одно дело разбираться, другое переводить и разбавлять
аноним, Sun Jan 4 17:21:09 2009:
"Что касается DSL-устройств — то они, как известно, делятся на две группы: те, что подключаются к компьютеру через стандартный сетевой интерфейс, и подключаемые к USB-разъему. Первые воспринимаются системой как обычные сетевые карты" (цитата)

Они не воспринимаются системой "как обычные сетевые карты", они являются по отношению к компьютеру шлюзом по умолчанию - идеальный вариант для подключения Linux или BSD системы к интернету.
На компьютере, для взаимодействия с таким DSL модемом должна быть установлена сетевая карта, только она и "воспринимается системой"
Алексей Федорчук, Thu Nov 20 09:55:39 2008:
2 unknownDaemon
> Ну эт вы зря... я не пров, конечно
____
Ключевая фраза.
Как расшифровывается VPN? - Приватная сеть. То есть созданная для использования в приватных (вне зависимости от масштаба, как в Вашем случае) целях.
А провайдер - это субъект публичный, а не приватный :)
Dmitriy, Thu Nov 20 09:37:55 2008:
Я на работе под виртуалкой запускал FreeBSD на 16М. Есть мнение, чт после установки FreeBSD может работать на 8М. но медленно
unknownDaemon, Tue Nov 18 04:22:57 2008:
>ИМХО, глупость

Ну эт вы зря... я не пров, конечно, но... у мя 4 сетки выходят в нет таким образом... причем пускать юзера туда или не пускать - отданно на откуп их конторским одминам(используя банально AD) , да и мне проще и считать и и ограничивать...
аноним, Fri Oct 17 07:02:43 2008:
Побежал ставить леди Free только вот где 4 ядра взять щ_0?
iZEN, Thu Oct 16 14:51:54 2008:
>Исходя из общих соображений, могу предположить, что и с web-камерами во FreeBSD дело тоже обстоит не очень хорошо — иными словами, со всеми устройствами, которые могут быть завязаны на Video4Linux.

А это что:
% pkg_info | grep v4
v4l_compat-1.0.20060801 Video4Linux compatibility header

???
Алексей Федорчук, Wed Oct 15 19:57:49 2008:
Совершенно верно, VPN - это тема отдельная и тут вряд ли уместная. Упомянута лишь постольку, поскольку в исполнении наших провайдеров подъездного (и, увы, не только подъездного) масштаба усложняет нам жизнь.
Олег ОФТ, Wed Oct 15 19:29:39 2008:
Почему "чуждые"?

Вообще-то VPN разрабатывалась для решения несколько иных задач, нежели используется некоторыми провайдерами - им так проще (а с кастрированным-то юзером и проблем поменьше).

Страницы комментариев: 1 :: 2 :: следующая

Комментарии заморожены.

Новости:

Все новости на CitCity.ru

Компании месяца

 
Последние комментарии
Почему школам следует использовать только свободные программы (101)
20 Декабрь, 14:51
ОСТОРОЖНО: ВИНДОФИЛИЯ! (2250)

24 Декабрь, 22:53
Linux в школе: мифы про школу и информатику (334)
24 Декабрь, 22:43
Kubuntu Feisty (15)
24 Декабрь, 18:42
Software is like sex: it's better when it's free.
©Linus Torvalds