linux против windows(звук)
Автор Сообщение
Axokol Не на форуме
Ветеран
*****

Откуда: Уфа
Сообщений: 18
Репутация: 15
RE: linux против windows(звук) / 24-05-2016 07:01
Всем привет. А вот интересная статейка пр линукс и звук.
Просто, может кому будет интересно. Объяснение трёхлетней давности наверняка ещё не потеряло актуальности.

http://pcaudiophile.ru/music-server/change/242-change-3

Привожу ту часть, которая заинтересовала лично меня:
"Ещё на старенькой звуковой карте Sound Blaster Compact PCI я заметил, что в DOS’е эта звуковая карта играла как-то «шире», а звук был прозрачнее. В Windows же такого ощущения не было, однако я долго списывал это на настроение. Позже, когда Linux вошёл в мою жизнь, я стал замечать, что те же песни звучат как-то лучше в Linux, чем в Windows, но тоже долго списывал это на настроение.

Из форумов я узнал, что не я один чувствую такую разницу в звуке. А объяснение этому я нашёл в далеко не аудифильской книге о принципах работы операционных систем. Вот маленький «ликбез» по функционированию компьютеров, который, как мне кажется, поможет объяснить эту разницу.

Звук из компьютера в ЦАП попадает по интерфейсу USB или шине PCI. Данные отправляет микропрограмма-драйвер. Упрощённо эту микропрограмму можно представить в виде некоторой процедуры (которая не относится к программе, воспроизводящей звук, а относится к операционной системе, является её частью), которая периодически, через определённый промежуток времени вызывается системой (это событие называют прерыванием). Эта процедура читает данные из памяти и выводит часть из них (или все) в звуковое устройство. Всё дело в том, что прерываний очень много, например, для обслуживания жёсткого диска, для обслуживания видеокарты, для обслуживания мышки/клавиатуры и т.п. Кроме того, у прерываний есть значение приоритета, когда какое-либо прерывание может не выполняться из-за того, что исполняется другое, более приоритетное прерывание.

Очевидно, что при воспроизведении музыки именно процедуре вывода звука должен присваиваться самый высокий приоритет. Однако тут и возникает самый главный нюанс. В Windows все прерывания делятся на прерывания ядра и прерывания приложений. Любое прерывание ядра всегда приоритетней прерывания приложения, даже если оно имеет самый высокий приоритет и должно работать в реальном времени. Этот принципиальный момент, который, как я думаю, делает практически невозможным качественно вывести звук в Windows, даже с использованием ASIO. Хотя удаление неиспользуемых служб и остановка ненужных процессов, конечно, улучшают звук.

В Linux же приоритеты процессов не делятся таким способом. И процесс, имеющий приоритет реального времени, будет прерывать другие, но сам не будет прерван. В Linux основная на данный момент система звука – ALSA (хотя есть OSS, разница между ними больше в интерфейсах программ), и её процессы имеют самый высокий приоритет. Что и делает звучание в Linux лучше, в чём каждый может убедиться."
Найти все сообщения
 
Цитировать


Сообщения в этой теме
RE: linux против windows(звук) - Axokol - 24-05-2016 07:01

Переход:


Пользователи просматривают эту тему: 1 Гость(ей)

Orion

Администрация форума | Статистика форума | Обратная связь | Вернуться к содержимому | Справка | Лёгкий режим | Список RSS