Dźwięk i muzyka w Linuksie
www.linux-muzyka.ixion.pl

Instalacja łat niskich opóźnień (jądra 2.4.x)



Artykuł opisuje sposób łatania kerneli linii 2.4.x. Zastosowanie łat autorstwa Andrew Mortona pozwoli na znaczące obniżenie latencji i sprawi, że Twój Linux stanie się profesjonalnym studiem obróbki dźwięku.



Do niedawna Linux nie był odpowiednią platformą dla systemów działających w czasie rzeczywistym. Profesjonalne zastosowanie tego systemu operacyjnego było znacznie utrudnione przez opóźnienia w obsłudze urządzeń zewnętrznych oraz procesów uznanych przez użytkownika za priorytetowe.

Opóźnienia systemu operacyjnego można teraz skutecznie obniżyć, wykorzystując do tego specjalne łaty nakładane na jądro. Dzięki nim czas reakcji zmniejszy się do jednej milisekundy. Niestety, łaty te nie wchodzą na razie w skład stabilnego jądra Linuksa. Zmusza to użytkownika do samodzielnej kompilacji kernela.

Osoby, które własnoręcznie przeprowadzały kompilację jądra nie będą miały zapewne żadnych programów z wkompilowaniem obsługi niskich opóźnień. Jeżeli jednak obawiasz się własnoręcznego nakładania łat na kernel, skorzystaj z multimedialnej dystrybucji Linuksa - AGNULi lub DeMuDi. Można również zaczekać na moment, w którym pojawi się nowa wersja jądra, obsługująca niskie opóźnienia.

Ciekawym projektem jest WOLK - są to stabilne oraz rozwojowe jądra Linuksa, w których skład wchodzą najważniejsze łaty niedostępne w standardowej wersji kernela. WOLK ułatwia kompilację jądra - nie trzeba osobno ściągać i instalować potrzebnych łat. Z drugiej strony, tak przygotowany kernel jest niestabilny. Ponadto podczas jego konfiguracji trzeba wybierać spośród wielu niepotrzebnych często opcji. Może się więc okazać, że najlepszym wyjściem jest, mimo wszystko, samodzielne nałożenie łat i kompilacja jądra.

Kompilowanie jądra WOLK.

Konfigurowanie jądra WOLK. Zobacz powiększenie

Aby samodzielnie zainstalować potrzebne łaty, należy wykonać następujące czynności:

  1. Ściągnięcie łat niskoopóźnieniowych ze strony http://www.zip.com.au/~akpm/linux/schedlat.html.

  2. Ściągnięcie tej wersji jądra Linuksa, dla której przeznaczona jest łata.

  3. Po rozpakowaniu źródeł jądra przejdź do katalogu, w którym znajduje się kernel, na przykład:
    cd /usr/src/linux

  4. Teraz można już załatać jądro poleceniem:
    patch -p1 < /usr/src/laty/2.4.20-low-latency.patch
    Pamiętaj, zby odpowiednio zmienić w powyższym przykładzie nazwę i ścieżkę dostępu do łat opóźnieniowych.

  5. Teraz można już skonfigurować jądro, na przykład poleceniem:
    make menuconfig
    W menu Processor Type and Features zaznacz Low latency scheduling.

  6. Jeżeli chcesz mieć możliwość wyłączenia na życzenie niskich opóźnień, powinieneś zaznaczyć Control low latency with sysctl w menu Processor Type and Features. Dodatkowo będziesz musiał wpisać do pliku /etc/sysctl.conf odpowiednią linijkę:
    kernel/lowlatency = 1
    co spowoduje, że łaty będą ładowane przy starcie systemu. Aby zdezaktywować niskie opóźnienia wystarczy zamienić powyższy wpis na
    kernel/lowlatency = 0

  7. Teraz można już skompilować jądro w standardowy sposób - nie zapomnij oczywiście skonfigurować zgodnie ze swoimi potrzebami wszystkich opcji nie związanych z łatą niskich opóźnień.

Opisana przeze mnie procedura jest zapewne zrozumiała dla użytkowników, którzy mają doświadczenia z kompilacją jądra Linuksa. Pozostali powinni przed rozpoczęciem pracy przeczytać dodatkowe instrukcje kompilacji kernela. Nieprawidłowo przygotowane jądro może spowodować całkowity upadek systemu - w najgorszym przypadku może być konieczna jego reinstalacja!



08.11.2003

Przeczytaj więcej na tej witrynie

Komentarze
  • 11-03-2004  —  Bart

    Zwróćcie uwagę na ostatni link na stronie, który zresztą sami zamieściliście. Dotyczy wiekowego jądra ale dzisiaj powszechnie wiadomo, że zabawa zaczyna się dopiero po nałożeniu _obu_ łat;
    low latency + preemptible. Dodam jeszcze, że Con Kolivas składa ładny desktopowy patchset -lck z którym można się zapoznać tutaj:
    http://www.plumlocosoft.com/kernel/
    Chociaż sam nie zaryzykowałbym wkładania tego do stacji audio bo i nie takie jest tego przeznaczenie ale można skorzystać z pierwszej łatki - lckbase - to jest ten zestaw funkcjonalności o który chodzi złożony w jeden diff.

  • 22-03-2004  —  tomcio44  e-mail: tomcio44-na-chrome-kropka-pl

    Co do koniecznej reinstalacji to nie mogę się zgodzić :) Przecież w najgorszym razie możemy wystartować ze starego obrazu jądra, które KONIECZNIE trzeba zachować na wszelki wypadek

  • 18-09-2004  —  brak mi już sił

    Jak zainstalować łatę niskich opóźnień w jądrze 2.6 i skąd je wziąć?


+ Dodaj własny komentarz

Twórca witryny nie ponosi odpowiedzialności za treść zamieszczonych komentarzy.


Inne strony w Internecie




SZUKAJ


SPONSOR


SEKCJE

Strona główna

• Programy

• Sprzęt i sterowniki

• Artykuły

• Blog

• Forum

• Linki

• Mapa serwisu

• Kontakt

• Przyjaciele