Возможности Linux

Папа может все, что угодно
Только мамой не может быть

Проводя аналогию с операционными системами, позволю себе заявить, что единственное, чему никогда не научатся "Форточки" - материнской любви к пользователю. Windows всегда будет закрытой системой, и в следующей, и через десять версий (дай ей Бог здоровья). Поэтому всегда останется в мире место для системы, о которой пользователь может узнать все из документации, или, на худой конец, покопавшись в прилагающихся исходниках, и за которую он никому ничего не будет должен.

Конечно, возможность копаться в исходниках важна для профессионалов и хакеров, но конечному пользователю интересно другое. Итак, о том, что умеет свободная операционная система Linux.

Самое главное - многопользовательская многозадачность. Это значит, что несколько человек могут одновременно запускать свои программы, используя ресурсы системы на полную катушку. Кроме того, поддерживаются легковесные процессы (потоки), которые работают в пределах одной задачи и потому расходуют меньше памяти и быстрее запускаются. Многозадачность Linux работает стабильно, один процесс не может завалить всю систему, как это происходит в Windows 95. Более того, два процесса также не могут завалить систему...

Далее, Linux поддерживает множество платформ. Наиболее распространена версия Linux для процессоров Intel 386+, также поддерживаются платформы Motorola 680x0 (компьютеры Amiga и Atari, старые Маки), PowerPC, DEC Alpha, Sun SPARC, в настоящее время идет работа над версиями для процессоров MIPS и ARM, и ядром для встроенных систем, которое будет работать и на Intel 8086. Также с помощью специального модуля можно обеспечить совместимость Linux со SCO, SVR3 и SVR4 на уровне исполнимых файлов и с другими версиями Unix, совместимыми с POSIX или BSD, на уровне исходников.

Кроме работы на различных процессорах, Linux может также работать с многопроцессорными системами SMP (Symmetric Multi Processing) на платформах Intel и SPARC, и используется в некоторых специфических системах, например, в кластерах Beowulf и суперкомпьютерах Fujitsu AP1000+ на базе SPARC.

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

Чтобы не быть голословным, приведу в пример собственный компьютер, 5x86-133/16 Мб. Даже при выполнении такой ресурсоемкой задачи, как компиляция Pretty Good Privacy 5.0i на фоне просмотра документов HTML, размер свопа не превышал полумегабайта, и оставалось еще 2 Мб на кэш диска. Как в такой конфигурации работает Windows 95, не говоря уже об NT, объяснять не надо.

Среди прочих удобств стоит отметить динамически загружаемые библиотеки, сохранение образа разрушенного процесса для "посмертной" отладки, эмуляцию математического сопроцессора на уровне ядра, систему "виртуальных консолей", позволяющую работать в нескольких сессиях одновременно, и поддержку локализации (в том числе три русских раскладки (две koi8 и одна alt-codes (MS-DOS)) и множество русских шрифтов).

Linux использует собственную файловую систему, ext2 (разделы до 4 терабайт и имена файлов до 255 символов), но может также работать с файловыми системами других юниксов, с DOS FAT, Windows 95 VFAT, OS/2 HPFS, Macintosh HFS и всеми стандартными форматами CDROM. Более того, Linux можно установить на DOS-овский раздел, поверх которого развернута система UMSDOS, в каждый каталог записывающая файл с недостающими в FAT атрибутами вроде длинных имен и прав доступа.

Что касается сетевых возможностей, то в стандартное ядро Linux обычно включается поддержка протоколов TCP, IPv4, IPX, DDP (Appletalt) и AX.25 (любительские радиосети). Существуют также модули, позволяющие Linux выполнять функции клиента или сервера в сетях NetWare, и разделять диски и принтеры в сетях на основе протокола SMB (Session Message Block, известен также как NetBIOS или LanManager), который используется в сетях Windows 3.11/95/NT.

Минимальная конфигурация для Linux - 386SX-16, 1 Мб ОЗУ и дисковод, но рекомендуется 4 Мб ОЗУ для работы в текстовом режиме и 8 Мб - для X/Windows. Как я уже говорил, в клиентской конфигурации с запасом хватает AMD 5x86-133 и 16 Мб ОЗУ, больше нужно только для серверов или графических станций. Объем требуемого дискового пространства сильно зависит от набора используемых программ. Для базового набора системных утилит вполне достаточно 10 Мб, остальное добавляется на пользовательские файлы и программные пакеты, и может составить от 60 до 300 Мб.

Список поддерживаемого оборудования называется Linux Hardware Howto и занимает десятки страниц, найти его можно по адресу http://sunsite.unc.edu/mdw/ HOWTO/Hardware-HOWTO.html или в стандартном комплекте документации. Для примера скажу лишь, что новомодные 3D-акселераторы Voodoo и Riva 128 в Linux поддерживаются.

Теперь о небогатом выборе программного обеспечения. В области коммуникационных программ и средств разработки с этой системой могут сравниться только другие Юниксы, программисту в Linux создаются все условия для плодотворной работы: десятки языков программирования, сотни редакторов, визуальные средства разработки - все это входит в большинство серьезных дистрибутивов Linux. То же с обработкой текстовых данных - в Unix изначально была сделана ставка на хранение информации в текстовом формате, и соответствующих средств было написано великое множество.

Графических программ под Linux также довольно много - от простых смотрелок до мощных редакторов и средств трехмерного моделирования и рейтрейсинга (в том числе и некоммерческих!). Более-менее полный список можно найти в Linux Graphics Mini-Howto на том же sunsite. То же со звуком - разного рода проигрывателей в дистрибутив Linux входит немало, а вот программу для серьезной звукозаписи придется поискать, а то и купить.

С базами данных дело обстоит сложнее. Конечно, их под Linux немало, в том числе свободная СУБД Postgres95, работающая с надмножеством SQL, но сколько бы их не было, мало кто решится переводить всю фирму со старого доброго FoxPro на неизвестно что. А для менее серьезных задач и база данных обычно не требуется.

Теперь о ложке дегтя. Действительно, Linux работает очень быстро. И все в ней можно настроить. Беда только в том, что многое в ней НУЖНО настраивать. Компании, занимающиеся разработкой и распространением дистрибутивов Linux, борются с этой проблемой с переменным успехом и предлагают заранее сконфигурированные пакеты, но всегда есть вероятность того, что придется лезть в систему руками. Такова цена за гибкость.

Дмитрий БОРОДАЕНКО,
forever@mad.scientist.com

Версия для печатиВерсия для печати

Номер: 

12 за 1998 год

Рубрика: 

Software
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!