СРАВНЯВАНЕ НА ВИДЕОСИСТЕМИТЕ
НА LINUX И WINDOWS
[http://www.nixp.ru/cgi-bin/go.pl?q=articles;a=lvsw_video]
автор: Василий Алексеенко
email: [vasilisc@rambler.ru]
домашна страница: http://www.uvsw.narod.ru
Направеният по-долу тест беше замислен
като лудория. Искаше ни се да разберем
колко видеофилма могат да бъдат пуснати
едновременно под една или друга
операционна система, като при това
най-голямо влияние оказва не самата
операционна система, а използваните
видео кодеци, плейъри и т. н. Но все пак
... Веднъж, виждайки на витрината на един
компютърен магазин монитор, върху който
паралелно и съвсем гладко се въртяха 4
филма под управлението на операционната
система ASP Linux, реших да проведа замисления
тест. Коя операционна система е
най-мултимедийна? Ето, че можем да
проверим (но нищо няма да докажем бел.
на ред.).
Няколко думи за теста:
Конфигурация на тестовия компютър:
AthlonXP 1700+
RAM 256 MB
GeForce2 MX400 64 MB
80 GB Seagate Barracuda
Драйвер на Nvidia за Windows XP: ForceWare
52.16 WHQL и
DirectX 9.0.
Драйвер на Nvidia за Linux: NVRM version:
NVIDIA Linux
x86 nvidia.o Kernel Module 1.0-4363.
Филмът е компресиран с кодек DivX 5.1 и
представлява видеоклип с участието
на персонажите от филма Lilo & Stitch
2, компресиран с включен параметър
No Audio т.е в него липсва аудио
пътечка.
Програмите за гледане на филм ще бъдат
с изключен звук. Не трябва звука да се
намесва там, където борбата ще е между
видеото.
На Windows XP, филма ще се намира в главната
директория на диск, форматиран с FAT32
файлова система, която е по-бърза от
NTFS.
Колко филма могат да вървят едновременно,
субективно ще решавам аз, а обективно
System Monitor на системата.
Ще се борят Windows XP и ASP Linux 9.0 (ядро
Red Hat
Linux + X-Windows + Gnome).
Windows XP
Използвах CrystalPlayer
v1.2, настроен на най-бърз режим на
работа (конфигурация,
2 kb). Ето информацията от CrystalPlayer:
Стартираме Start Settings Control Panel
Administrative Tools Performance. И с отметката
стартираме CrystalPlayer с филми един след
друг.
Ето
и моята присъда: на моята машина под
Windows XP може да се гледат 3 филма, четвъртият
вече забавя системата. Средно един филм
заема около 30-40% от ресурсите на процесора.
Обърнете внимание на зелената графика
Свободна оперативна памет в MB - той
не стига до 0. За операционната системата
и за програмата има достатъчно памет
за работа.
ASPLinux 9.0
Да, за света на UNIX ще се бори този руски
гигант. Red Hat Linux + X-Window + Gnome. За гледане
на филми е избран Mplayer, който е много
популярен в света на Unix/Linux. Стартираме
го с опция -nosound и забранен postprocessing
video. Още преди резултатите от теста ще
кажа следното системата X-Window консумира
много оперативна памет. На мен ми изяде
250 MB от 256. Засега не знам как мога да
намаля нейния апетит, но не ми се иска
в днешния тест Linux да използва swap паметта,
а не оперативната, понеже тя е по-бавна.
Малко по-късно намерих обяснение, защо
X-Window използва толкова много ресурси:
При използването на паметта и X, и KDE
използват същата идеология, която
използва и ядрото на Linux - Ресурсите
на компютъра трябва да се използват
напълно. Затова неизползваната памет
се запълва с най-различни незадължителни
буфери, които ускоряват работата с
графика, подобряват запълването и т. н.
Но все едно KDE и X-Window при своето стартиране
използват повече системни ресурси,
отколкото MS Windows, защото те са отделни
програми, докато в Windows графиката е
интегрирана в ядрото на системата.
Но теста вече беше започнат и ето
резултата:
Изморих се да пускам Mplayer, докато
натоварването на процесора не стигна
~100%. И ето какво постигнах: 12 филма и
моето субективно мнение е, че системата
започва да се бави при 13-тия филм, който
беше спрян. Обърнете внимание на зелената
линия на графиката (използване на swap
диска) нейната гладкост говори за
това, че ASP Linux при гледането на тези 13
филма не използва допълнителна памет
от swap дяла.
Разбор
на теста
Победата на ASPLinux е безспорна, ако отчетем
факта, че филма в .AVI формат е дело на
Microsoft. А излиза, че с AVI най-добре умеят
да се работят програмисти под Linux и
софтуера за Linux (само се шегувам :)).
В света на Windows, нито една видеопрограма
не декодира сама филма (нали филмите са
компресирани с един или друг алгоритъм),
а извиква инсталирания в системата
декомпресор, чийто компресор е компресирал
филма. Ето защо във Windows всички видеопрограми
отнемат едно и също процесорно време,
като лъвският дял от него отива за работа
на декомпресора. Затова споровете коя
програма е по-добра или по-лоша са
глупави: тя може да предоставя допълнителни
услуги по постобработката на видео и
аудио потоците, както CrystalPlayer например.
За да ми бъде чиста съвеста, ще кажа, че
програмите за гледане на филми не
декодират сами филма QuickView
Pro (DOS), създадена от немски програмист,
под чист DOS сама декодира и образа и
звука, като самата програма е голяма
около 312 kb.
Аз не мога да обясня в детайли работата
на кодеците
в света на UNIX. В UNIX/Linux няма единна основа
от установени кодеци. Всяка програма
за гледане на филми под *nix система
използва модул/библиотека/своя/чужда
за декомпресиране на филма. В Mplayer, за
гледане на филми във формат .MOV, .ASF, .WMV
(формати на Apple и Microsoft), се използват
библиотеки
от Microsoft. А на инсталационния диск на
Movix (орязан Linux за гледане на филми),
Mplayer даже използва опаковани с bzip
библиотеки от Microsoft, като в помощта към
програмата е посочено, че не е необходимо
те да се разопаковат. Това, разбира се,
поразява и предизвиква възхищение.
Програмистите на Mplayer използват библиотеки
от Microsoft (такива файлове в UNIX няма) и при
това постигат забележителни резултати.
С този разбор искам да покажа, че разликата
12 филма против 3 е нещо повече от 4 пъти.
Забележка: За теста под Windows е
използван набора от кодеци K-Lite Codecs
2.20f.
превод: Николай
Ангелов