Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² срСдС Linux. Π’Ρ‚ΠΎΡ€ΠΎΠ΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅Β»

Автор Майкл ДТонсон

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² срСдС Linux

Π’Ρ‚ΠΎΡ€ΠΎΠ΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅

Π›ΠΎΡ€Π΅Π½ ΠΈ Π―Π½Ρƒ β€” Π·Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π΄Π°Π²Π°Π»ΠΈ ΠΌΠ½Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΎΡ‚Π²Π»Π΅ΠΊΠ°Ρ‚ΡŒΡΡ ΠΎΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹.

Π­Ρ€ΠΈΠΊ

ΠŸΠ°ΠΌΡΡ‚ΠΈ ΠΌΠΎΠ΅ΠΉ Π±Π°Π±ΡƒΡˆΠΊΠΈ, Π­Π»ΠΈΠ½ΠΎΡ€ ДТонсон, Π½Π°ΡƒΡ‡ΠΈΠ²ΡˆΠ΅ΠΉ мСня Π²Π΅Ρ€ΠΈΡ‚ΡŒ Π² Π‘ΠΎΠ³Π°, ΠΈ Π³Π»ΡƒΠ±ΠΎΠΊΠΎ Π²Π΅Ρ€ΠΈΠ²ΡˆΠ΅ΠΉ Π² мСня самого.

Майкл

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Данная ΠΊΠ½ΠΈΠ³Π° ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… (ΠΈΠ»ΠΈ Π½Π΅ ΡΡ‚ΠΎΠ»ΡŒ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ…, Π½ΠΎ ΠΆΠ΅Π»Π°ΡŽΡ‰ΠΈΡ… ΠΎΠ±ΡƒΡ‡Π°Ρ‚ΡŒΡΡ) программистов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°ΠΌΠ΅Ρ€Π΅Π²Π°ΡŽΡ‚ΡΡ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС для Linux ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅Π½ΠΎΡΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π² Linux с Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ. Π­Ρ‚Π° ΠΊΠ½ΠΈΠ³Π° ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ Π²ΠΎ врСмя обучСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Π² Linux, ΠΏΠΎΡ‚ΠΎΠΌ ΠΆΠ΅ ΠΎΠ½Π° станСт Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹ΠΌ справочником. ПослС написания ΠΏΠ΅Ρ€Π²Ρ‹Ρ… Ρ‚Ρ€Π΅Ρ… Π³Π»Π°Π² ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ издания ΠΌΡ‹ использовали Ρ‡Π΅Ρ€Π½ΠΎΠ²ΠΈΠΊΠΈ ΠΊΠ°ΠΊ справочный ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» Π²ΠΎ врСмя повсСднСвной Ρ€Π°Π±ΠΎΡ‚Ρ‹.

Π’Ρ‚ΠΎΡ€ΠΎΠ΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ Π±Ρ‹Π»ΠΎ сущСствСнно ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΎ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π±Ρ‹Π» ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ сайт, посвящСнный ΠΊΠ½ΠΈΠ³Π΅, β€” http://ladweb.net/.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ систСма Linux Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Ρ‚ΡŒ максимально ΠΏΠΎΡ…ΠΎΠΆΠ΅ΠΉ Π½Π° Unix. Книга даст Π²Π°ΠΌ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠ΅ основы программирования Π² Unix-стилС. Linux сущСствСнно Π½ΠΈΡ‡Π΅ΠΌ Π½Π΅ отличаСтся ΠΎΡ‚ Unix; Π²ΠΏΡ€ΠΎΡ‡Π΅ΠΌ, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ различия Π΅ΡΡ‚ΡŒ, Π½ΠΎ ΠΎΠ½ΠΈ Π½Π΅ Π±ΠΎΠ»Π΅Π΅ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹, Ρ‡Π΅ΠΌ Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ отличия ΠΌΠ΅ΠΆΠ΄Ρƒ двумя вСрсиями Unix. Π­Ρ‚Π° ΠΊΠ½ΠΈΠ³Π° прСдставляСт собой руководство ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Unix, написанноС с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Linux, с ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ, спСцифичСской для Linux.

Linux Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, возмоТности прямого доступа ΠΊ экрану (см. Π³Π»Π°Π²Ρƒ 21), Π° Ρ‚Π°ΠΊΠΆΠ΅ срСдства, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π² Π½Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ часто, Ρ‡Π΅ΠΌ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… систСмах Π²Ρ€ΠΎΠ΄Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ popt (см. Π³Π»Π°Π²Ρƒ 26). ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» этой ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Ρ‚Π°ΠΊΠΈΠ΅ срСдства ΠΈ возмоТности, поэтому Π²Ρ‹ смоТСтС ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΏΠΎ- настоящСму ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ΡΡ прСимущСствами Linux.

β€’ Π•ΡΠ»ΠΈ Π²Ρ‹ ΡΠ²Π»ΡΠ΅Ρ‚Π΅ΡΡŒ программистом Π½Π° языкС Π‘, Π½ΠΎ Π½Π΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ Π½ΠΈ с Unix, Π½ΠΈ с Linux, Ρ‚ΠΎ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ этой ΠΊΠ½ΠΈΠ³ΠΈ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΎΠΊΠ°ΠΆΠ΅Ρ‚ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΡƒΡŽ ΠΏΠΎΠΌΠΎΡ‰ΡŒ Π½Π° ΠΏΡƒΡ‚ΠΈ вашСго становлСния ΠΊΠ²Π°Π»ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ программистом для Linux. Π’ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π²ΡˆΠΈΡΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ систСмной Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ, Π²Ρ‹ Π»Π΅Π³ΠΊΠΎ смоТСтС ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π² Π»ΡŽΠ±ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Unix.

β€’ Π•ΡΠ»ΠΈ Π²Ρ‹ ΡΠ²Π»ΡΠ΅Ρ‚Π΅ΡΡŒ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ программистом, эта ΠΊΠ½ΠΈΠ³Π° ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ Π²Π°ΠΌ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π² Linux. ΠœΡ‹ ΠΏΠΎΡΡ‚Π°Ρ€Π°Π»ΠΈΡΡŒ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ поиск всСй Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ раскрываСм Ρ‚Π΅ΠΌΡ‹, Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ затруднСния Π΄Π°ΠΆΠ΅ Ρƒ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… программистов Π² Unix, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π³Ρ€ΡƒΠΏΠΏΡ‹ процСссов ΠΈ сСансов, ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ заданиями ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° с tty.

β€’ Π•ΡΠ»ΠΈ Π²Ρ‹ ΡΠ²Π»ΡΠ΅Ρ‚Π΅ΡΡŒ программистом Π² Linux, Π² Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅ раскрыты "ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ½Ρ‹Π΅" Ρ‚Π΅ΠΌΡ‹ ΠΈ ΠΎΠ±Π»Π΅Π³Ρ‡Π΅Π½Ρ‹ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ программирования. ΠŸΠΎΡ‡Ρ‚ΠΈ каТдая Π³Π»Π°Π²Π° покаТСтся Π²Π°ΠΌ Π·Π½Π°ΠΊΠΎΠΌΠΎΠΉ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π²Ρ‹ ΡƒΠΆΠ΅ ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌΠΈ знаниями Linux. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, нСсмотря Π½Π° ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉΡΡ ΠΎΠΏΡ‹Ρ‚, ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» этой ΠΊΠ½ΠΈΠ³ΠΈ Π²Ρ‹ сочтСтС ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ.

Настоящая ΠΊΠ½ΠΈΠ³Π° отличаСтся ΠΎΡ‚ стандартных пособий ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Π² Unix, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ являСтся спСцифичСской для ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы. ΠœΡ‹ Π½Π΅ пытаСмся ΠΎΡ…Π²Π°Ρ‚ΠΈΡ‚ΡŒ всС различия систСм, ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… Unix; это Π½Π΅ принСсСт особой ΠΏΠΎΠ»ΡŒΠ·Ρ‹ программистам, ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ Π½Π° Linux ΠΈ Unix, ΠΈΠ»ΠΈ программистам Π½Π° языкС Π‘, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ с Linux ΠΈΠ»ΠΈ Unix Π½Π΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹. По своСму ΠΎΠΏΡ‹Ρ‚Ρƒ ΠΌΡ‹ Π·Π½Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π½Π°Π²Ρ‹ΠΊΠΈ программирования Π² любой систСмС, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ Unix, ΠΎΠ±Π»Π΅Π³Ρ‡Π°ΡŽΡ‚ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… систСм.

Данная ΠΊΠ½ΠΈΠ³Π° Π½Π΅ ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ всСх подробностСй программирования Π² Linux. Π’ Π½Π΅ΠΉ Π½Π΅ рассказываСтся ΠΎ Π±Π°Π·ΠΎΠ²ΠΎΠΌ интСрфСйсС, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ ANSI/ISO Π‘ β€” ΠΎΠ± этом ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΊΠ½ΠΈΠ³Π°Ρ…. Π’ Π½Π΅ΠΉ Π½Π΅ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ языки программирования, доступныС Π² Linux, Π° Ρ‚Π°ΠΊΠΆΠ΅ графичСскиС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΡΠ²Π»ΡΡŽΡ‰ΠΈΠ΅ΡΡ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½Ρ‹ΠΌΠΈ нСзависимо ΠΎΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ систСмы β€” это рассматриваСтся Π² ΠΊΠ½ΠΈΠ³Π°Ρ…, ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Π½Π° упомянутыС области. ΠœΡ‹ прСдоставляСм ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ для прохоТдСния ΠΏΡƒΡ‚ΠΈ ΠΎΡ‚ программиста Π½Π° Π‘ для систСм, ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… Windows, Macintosh ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ DOS, Π΄ΠΎ программиста Π½Π° Π‘ для Linux.

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π½ΠΎ ΠΊΠ½ΠΈΠ³Π° состоит ΠΈΠ· Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… частСй.

β€’ ΠŸΠ΅Ρ€Π²Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ прСдставляСт собой Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Linux, описывая ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΡƒΡŽ систСму, условия Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΈ ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ΠΎΠ²ΡƒΡŽ ΡΠΈΡΡ‚Π΅ΠΌΠ½ΡƒΡŽ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ.

β€’ Π’ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ части Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹Π΅ аспСкты срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ β€” компиляторы, ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Ρ‰ΠΈΠΊ ΠΈ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½Ρ‹Π΅ инструмСнты, Π½Π΅ ΡΡ‚ΠΎΠ»ΡŒ ΡˆΠΈΡ€ΠΎΠΊΠΎ примСняСмыС Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ….

β€’ Π’ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ, основной, части рассматриваСтся интСрфСйс ядра ΠΈ систСмных Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ Π·Π°Π΄ΡƒΠΌΠ°Π½Π½Ρ‹Ρ… Π² качСствС интСрфСйса ядра. Π’ этой части Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π³Π»Π°Π²Ρ‹ 19, 20 ΠΈ 21 ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ ярко Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½Π½ΠΎΠΉ спСцификой Linux; Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π² основном удСляСтся ΠΎΠ±Ρ‰Π΅ΠΌΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Π² Unix с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Linux. Π’ Π½ΠΎΠ²ΠΎΠΉ Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ ΠΈΠ·Π΄Π°Π½ΠΈΠΈ Π³Π»Π°Π²Π΅ 22 описаны основы Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.

β€’ Π§Π΅Ρ‚вСртая Ρ‡Π°ΡΡ‚ΡŒ дополняСт ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… частСй. Она Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ описания Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π²Π°ΠΆΠ½Ρ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ интСрфСйсы, Π±ΠΎΠ»Π΅Π΅ зависимыС ΠΎΡ‚ ядра. По сути, эти Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ спСцифичСскими для Linux, Π½ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Π½ΠΈΡ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ‡Π°Ρ‰Π΅ Π² систСмах Linux, Ρ‡Π΅ΠΌ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… систСмах.

Если Π²Ρ‹ ΡƒΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π² Linux ΠΈΠ»ΠΈ Unix, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π³Π»Π°Π²Ρ‹ этой ΠΊΠ½ΠΈΠ³ΠΈ Π² любом порядкС, пропуская Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ вас Π½Π΅ интСрСсуСт. Если Π²Ρ‹ Π½Π΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ с Linux ΠΈΠ»ΠΈ Unix, Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Π³Π»Π°Π² Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹, Π½ΠΎ для Π½Π°Ρ‡Π°Π»Π° рСкомСндуСтся Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ Π³Π»Π°Π² 1, 2, 4, 5, 9, 10, 11 ΠΈ 14, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΈ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, Π·Π½Π°Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ для чтСния Π΄Ρ€ΡƒΠ³ΠΈΡ… Π³Π»Π°Π². Π’ частности, Π² Π³Π»Π°Π²Π°Ρ… 10, 11 ΠΈ 14 формируСтся основа ΠΌΠΎΠ΄Π΅Π»ΠΈ программирования Π² Unix ΠΈ Linux.

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ, нСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Π΅ΠΌΡ‹ Π² Π½ΠΈΡ… ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚, Π² основном Π΄ΠΎΠΏΠΎΠ»Π½ΡΡŽΡ‚ Π΄Π°Π½Π½ΡƒΡŽ ΠΊΠ½ΠΈΠ³Ρƒ, Π±ΡƒΠ΄ΡƒΡ‡ΠΈ ΠΏΡ€ΠΎΡ‰Π΅, слоТнСС, Π»ΠΈΠ±ΠΎ рассматривая сходныС Ρ‚Π΅ΠΌΡ‹.

β€’ The Π‘ Programming Language, second edition (Π―Π·Ρ‹ΠΊ программирования Π‘ (Π‘ΠΈ), Π‘Ρ€Π°ΠΉΠ°Π½ Π£. ΠšΠ΅Ρ€Π½ΠΈΠ³Π°Π½, ДСннис М. Π ΠΈΡ‚Ρ‡ΠΈ, Π˜Π” "Π’ΠΈΠ»ΡŒΡΠΌΡ", 2005 Π³ΠΎΠ΄) [15]. ΠšΡ€Π°Ρ‚ΠΊΠΎ ΠΎΠ±ΡƒΡ‡Π°Π΅Ρ‚ стандартному ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Π½Π° ANSI Π‘ с нСбольшой ссылкой Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΡƒΡŽ систСму. Она ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»Π΅ΠΉ, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ… Π½Π°Π²Ρ‹ΠΊΠΈ программирования.

β€’ Practical Π‘ Programming [27]. ΠžΠ±ΡƒΡ‡Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΈ ΡΡ‚ΠΈΠ»ΡŽ Π‘ шаг Π·Π° шагом. Π­Ρ‚ΠΎ пособиС для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠ΅ для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ ΠΎΠΏΡ‹Ρ‚Π° программирования.

β€’ Programming with GNU Software [19]. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΠ΅Ρ‚ собой Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² срСду программирования GNU, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π΅ Π³Π»Π°Π²Ρ‹, посвящСнныС запуску компилятора Π‘, ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ°, ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ make ΠΈ систСмы управлСния исходным ΠΊΠΎΠ΄ΠΎΠΌ RCS.

β€’ Advanced Programming in the UNIX Environment [35]. ΠžΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹Π΅ систСмы Unix ΠΈ систСмы, ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ Unix, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²ΡƒΠ΅Ρ‚ появлСнию Linux. Π’ ΠΊΠ½ΠΈΠ³Π΅ рассматриваСтся ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π», Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΉ прСдставлСнному Π² Π΄Π²ΡƒΡ… Π·Π°ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π³Π»Π°Π² настоящСй ΠΊΠ½ΠΈΠ³ΠΈ: систСмныС Π²Ρ‹Π·ΠΎΠ²Ρ‹ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ совмСстного использования. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π² Π½Π΅ΠΉ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ мноТСство ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΈ ΠΎΠ±ΡŠΡΡΠ½ΡΡŽΡ‚ΡΡ различия ΠΌΠ΅ΠΆΠ΄Ρƒ вСрсиями Unix.

β€’ UNIX Network Programming [33]. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ рассматриваСт сСтСвоС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Π²ΠΈΠ΄Ρ‹ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ сСтСй, нСдоступных Π² Linux. Π’ΠΎ врСмя чтСния этой ΠΊΠ½ΠΈΠ³ΠΈ особоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ слСдуСт ΡƒΠ΄Π΅Π»ΡΡ‚ΡŒ интСрфСйсу сокСтов Π‘Π΅Ρ€ΠΊΠ»ΠΈ (см. Π³Π»Π°Π²Ρƒ 17), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ обСспСчиваСт ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅Π½ΠΎΡΠΈΠΌΠΎΡΡ‚ΡŒ. Π­Ρ‚Π° ΠΊΠ½ΠΈΠ³Π° пригодится, Ссли Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±Π½ΠΎΡΡ‚ΡŒ Π² ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΊΠΎΠ΄Π° для пСрСноса сСтСвой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Linux Π² срСду ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π½ΠΎΠ²ΠΎΠΉ разновидности Unix.

β€’ A Practical Guide to Red Hat Linux 8 [32]. Книга ΠΏΠΎΡ‡Ρ‚ΠΈ Π½Π° 1500 страниц, содСрТащая ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Linux, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ ΠΈ систСмном администрировании. НСсмотря Π½Π° Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ Π² Π½Π°Π·Π²Π°Π½ΠΈΠΈ ΠΊΠ½ΠΈΠ³ΠΈ упоминаСтся Red Hat Linux 8, Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ содСрТащСйся Π² Π½Π΅ΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ относится ΠΊΠΎ всСм разновидностям Linux. Она Ρ‚Π°ΠΊΠΆΠ΅ содСрТит ΠΊΡ€Π°Ρ‚ΠΊΡƒΡŽ ссылку Π½Π° ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹, содСрТащиСся Π² систСмС Linux.

β€’ Linux in a Nutshell [31]. ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΠ΅Ρ‚ ΠΊΡ€Π°Ρ‚ΠΊΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΠ± ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π°Ρ….

β€’ Linux Device Drivers, second edition [28]. ΠžΠ±ΡƒΡ‡Π°Π΅Ρ‚ написанию Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² устройств Linux ΠΊΠ°ΠΊ Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ Π·Π½Π°ΠΊΠΎΠΌ с ΠΊΠΎΠ΄ΠΎΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы, Ρ‚Π°ΠΊ ΠΈ Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ с Π½ΠΈΠΌ Π½Π΅ Π·Π½Π°ΠΊΠΎΠΌ.

ΠŸΠΎΠ»Π½Ρ‹ΠΉ список Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΠΎΠΉ Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠ½ΠΈΠ³ΠΈ.

ВсС исходныС ΠΊΠΎΠ΄Ρ‹ Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΌΠΈ ΠΎΡ‚ Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ протСстированных Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ². Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹ доступны Π½Π° сайтС http://ladweb.net, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π° сайтС ΠΈΠ·Π΄Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π°. Для ясности Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΡ… Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ… ΠΊΠΎΠ΄Π° оставлСны ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ лишь Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Ρ… ошибок, Π° Π½Π΅ всСх Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ…. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π² Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΡ‹Ρ… ΠΊΠΎΠ΄Π°Ρ… Π²Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ всСх сущСствСнных ошибок.

Π’ ΠΊΠ½ΠΈΠ³Π΅ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡ… ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ. ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ справочной Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ, большая Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² вашСй систСмС. Π’ Π³Π»Π°Π²Π΅ 3 описаны способы поиска ΠΎΠ½Π»Π°ΠΉΠ½ΠΎΠ²ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ вашСй систСмС Linux.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ систСма Linux ΡΡ‚Ρ€Π΅ΠΌΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ развиваСтся, ΠΈ ΠΊΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ прочтСния ΠΊΠ½ΠΈΠ³ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ„Π°ΠΊΡ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒΡΡ. Данная ΠΊΠ½ΠΈΠ³Π° Π±Ρ‹Π»Π° написана с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ ядра Linux 2.6 ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ GNU Π‘ вСрсии 2.3.

Π’Ρ‚ΠΎΡ€ΠΎΠ΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅

НиТС пСрСчислСны добавлСния ΠΈ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ, появившиСся Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ ΠΈΠ·Π΄Π°Π½ΠΈΠΈ ΠΊΠ½ΠΈΠ³ΠΈ.

β€’ Π’ся ΠΊΠ½ΠΈΠ³Π° Π±Ρ‹Π»Π° ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π° с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ Π½ΠΎΠ²ΠΎΠΉ спСцификации Unix вСрсии 6 β€” ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠΉ вСрсии стандарта POSIX.