Internet Info, s.r.o. Lupa Měšec Podnikatel Root Zdroják DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Hlavní navigace

Pokročilé programování v operačním systému Linux

Nakladatelství Softpress pro nás připravilo překlad knihy Advanced Linux Programming autorů M. Mitchella, J. Oldhama a A. Samuela, jež vyšla u New Riders Publishing. Máme pro vás recenzi.

Tweetni to Twitter Jaggni to! Jagg Del.icio.us Delicious

Programovat v operačním systému UNIX v jazyce C/C++ není žádná věda. Učebnic tohoto jazyka je na trhu přehršel a architektura UNIX je díky Linuxu výborně dostupná a dokumentovaná. Proto mi kniha na první pohled nepřipadala zajímavá, jenže zdání klame a já jsem se pro ni nakonec do knihkupectví vrátil. Udělal jsem dobře.

V úvodu nás autoři seznámí s nástroji, které má UNIX standardně k dispozici. Je to především svatá trojice GCC, GNU Emacs a GNU Make. Tuto trojici doplňuje ještě GDB. Autoři nenásilně vysvětlují, co je to překladač, linker a jak vytvořit sestavovací soubor pro GNU Make. Jako třešničku na dort přidávají ještě základní editaci v editoru GNU Emacs.

Hned druhá kapitola se však zdá býti už i pro zdatnější jedince užitečnou. Shrnuje základní způsoby komunikace s okolím, zejména s příkazovým interpretem pomocí parametrů, návratové hodnoty a proměnné prostředí. Na konec kapitoly přidávají autoři ještě informace o knihovnách. Jak je správně používat (jak staticky, tak sdíleně), jak se vyhnout cyklickým vazbám či jaké jsou výhody a nevýhody sdílených knihoven.

Kapitola o procesech je velmi podrobná a dá se říci, že podrobněji to už je snad pouze v originální dokumentaci k Linuxu. Vytváření a ukončování procesů jsou stejně jako zasílání signálů tak důležité vlastnosti unixových operačních systémů, že by byla hanba to pominout.

Vlákna, tak se jmenuje čtvrtá kapitola, ve které jde podle mého názoru do tuhého. Vytváření a rušení vláken, synchronizace a uváznutí, to jsou témata, která by vydala na celou knihu. Autoři vše popisují na praktických příkladech, které jdou všechny přeložit a spustit, což se mi moc líbí.

Skvělá je také kapitola o komunikaci mezi procesy, protože jsou zde popsány všechny známé techniky. Sdílená paměť a semafory, roury, sockety a mapovaná paměť. Autoři ukazují také pokročilou techniku efektivního čtení z disku pomocí mapované paměti (mmap).

Šestá a sedmá kapitola se věnují zařízení v Linuxu a souborovému systému /proc. Rád bych upozornil, že kniha se v žádném případě nevěnuje programování ovladačů. Je kompletně zaměřena na uživatelské programování. A tak jsou koncipovány i tyto kapitoly. Čtenář se dozví, co se všechno z ovladačů zařízení a souborů proc může dozvědět a jak je správně používat.

Systémová volání Linuxu jsou skvělá věc, nejen pokud chcete optimalizovat váš kód. Některé věci bez nich prostě nejdou. Kniha se samozřejmě nemůže věnovat všem systémovým voláním (je jich ke dvěma stovkám), ale popisuje alespoň desítku nejdůležitějších z nich.

Devátá kapitola je lehkým úvodem do assembleru a věnuje se zejména inline assembleru překladače GCC. Ačkoliv je tato problematika poměrně složitá, je zde položen dobrý základ pro širší studium této látky. Minimálně se čtenář dozví, jak kód assembleru správně vkládat.

Předposlední kapitola se věnuje bezpečnosti. Jsou zde popsány základní techniky autentizace a autorizace uživatelů a k mému překvapení autoři přidali tři nejznámější bezpečnostní rizika při programování v jazycích C/C++ (překročení vyrovnávací paměti, souběh v odkládacím adresáři a nebezpečné volání funkce system).

Dílo je uzavřeno ukázkovou aplikací v jazyce C – jednoduchým webovým serverem s modulární architekturou pomocí sdílených modulů, který zprostředkovává základní informace o hostitelském systému. V dodatkové části pak nalezneme popis I/O funkcí, signálů, nezbytné odkazy a licence OPL a GPL v českém překladu.

davame_internetu_obsah
       

Překlad je až na několik překlepů dobrý. Výpisy zdrojových kódů k mé spokojenosti přeloženy nebyly. Knihu bych doporučil všem, kteří programují nebo hodlají programovat na nízké úrovni v operačním systému Unix/Linux.

Mark Mitchell, Jeffrey Oldham, Alex Samuel
Pokročilé programování v operačním systému Linux
Překlad Miroslav Dressler
ISBN 80–86497–29–1
320 stran, Softpress, 2002

Školení: Linux – Firemní server

Na třídenním školení se naučíte nainstalovat a spravovat kompletní linuxový server do Vaší firmy se všemi základními službami, které potřebujete pro provoz Vaší sítě, firemních emailů a webových stránek.

Podrobnější informace a přihláška

Ohodnoťte jako ve škole:
Průměrná známka 2,84

Přehled názorů

existuje i PDF verze v Anglictine
SashaN 12. 6. 2003 08:22
Nový
├ 
Re: existuje i PDF verze v Anglictine
th 12. 6. 2003 08:24
Nový
└ 
Re: existuje i PDF verze v Anglictine
anonymní uživatel 12. 6. 2003 21:41
Nový
 
├ 
Re: existuje i PDF verze v Anglictine
Creasser 24. 10. 2004 17:54
Nový
 
│
└ 
Re: existuje i PDF verze v Anglictine
korCZis 12. 8. 2005 13:25
Nový
 
└ 
Re: existuje i PDF verze v Anglictine
Creasser 24. 10. 2004 20:14
Nový
http://www.advancedl inuxprogramming.com/
th 12. 6. 2003 08:23
Nový
└ 
Re: http://www.advancedl inuxprogramming.com/
Ivo Danihelka 12. 6. 2003 21:28
Nový
Chybi rejstrik
Dan Svozil 12. 6. 2003 09:33
Nový
└ 
Re: Chybi rejstrik
lzap 12. 6. 2003 11:13
Nový
 
└ 
Re: Chybi rejstrik
tom@z 12. 6. 2003 19:17
Nový
 
 
└ 
Re: Chybi rejstrik
slashsbluesball 31. 3. 2006 11:45
Nový
Zase neco napul
micus 12. 6. 2003 11:53
Nový
├ 
Re: Zase neco napul
Libor Chocholaty 12. 6. 2003 13:57
Nový
│
├ 
Re: Zase neco napul
micus 12. 6. 2003 15:10
Nový
│
│
└ 
Re: Zase neco napul
JC 12. 6. 2003 16:10
Nový
│
└ 
Re: Zase neco napul
rezignovavsi 12. 6. 2003 16:24
Nový
│
 
└ 
Re: Zase neco napul
Libor Chocholaty 12. 6. 2003 19:02
Nový
│
 
 
├ 
Re: Zase neco napul
Yeti 12. 6. 2003 21:47
Nový
│
 
 
│
└ 
Re: Zase neco napul
JC 12. 6. 2003 22:11
Nový
│
 
 
└ 
Re: Zase neco napul
rezignovavsi 13. 6. 2003 11:16
Nový
└ 
Re: Zase neco napul
Marcel Svitalský 16. 6. 2003 10:08
Nový
snprintf
pepa 21. 7. 2003 19:27
Nový
Preklad plny preklepu
BruXy 19. 4. 2005 15:51
Nový
       

Tento text je již více než dva měsíce starý. Chcete-li na něj reagovat v diskusi, pravděpodobně vám již nikdo neodpoví. Pro řešení aktuálních problémů doporučujeme využít naše diskusní fórum.

Zasílat nově přidané příspěvky e-mailem