git: 3ad76742d6 - main - update translation of books/design-44bsd to Russian
Vladlen Popolitov <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.cvs.doc |
|---|---|
| Message-ID | <[email protected]> |
The branch main has been updated by vladlen: URL: https://cgit.FreeBSD.org/doc/commit/?id=3ad76742d622215a60dbab44eb9328b6c62176b3 commit 3ad76742d622215a60dbab44eb9328b6c62176b3 Author: Vladlen Popolitov <[email protected]> AuthorDate: 2025-10-03 15:14:15 +0000 Commit: Vladlen Popolitov <[email protected]> CommitDate: 2025-10-03 15:14:15 +0000 update translation of books/design-44bsd to Russian Reviewed by: maxim (mentor) Approved by: maxim (mentor) Differential Revision: https://reviews.freebsd.org/D52015 --- .../content/ru/books/design-44bsd/_index.adoc | 235 +- .../content/ru/books/design-44bsd/_index.po | 3677 ++++++++++++++++++++ 2 files changed, 3754 insertions(+), 158 deletions(-) diff --git a/documentation/content/ru/books/design-44bsd/_index.adoc b/documentation/content/ru/books/design-44bsd/_index.adoc index 439f26d9c2..7146569e37 100644 --- a/documentation/content/ru/books/design-44bsd/_index.adoc +++ b/documentation/content/ru/books/design-44bsd/_index.adoc @@ -1,13 +1,20 @@ --- -title: ÐÑÑ Ð¸ÑекÑÑÑа и ÑеализаÑÐ¸Ñ Ð¾Ð¿ÐµÑаÑионной ÑиÑÑÐµÐ¼Ñ 4.4BSD authors: - - author: Marshall Kirk McKusick - - author: Keith Bostic - - author: Michael J. Karels - - author: John S. Quarterman -copyright: 1996 Addison-Wesley Longman, Inc + - + author: 'Marshall Kirk McKusick' + - + author: 'Keith Bostic' + - + author: 'Michael J. Karels' + - + author: 'John S. Quarterman' +bookOrder: 60 +copyright: '1996 Addison-Wesley Longman, Inc' +description: 'ÐÑедоÑÑавлено издаÑелÑÑÑвом Addison-Wesley и пÑедоÑÑавлÑÐµÑ Ð¾Ð±Ð·Ð¾Ñ Ð°ÑÑ Ð¸ÑекÑÑÑÑ 4.4BSD, Ð¾Ñ ÐºÐ¾ÑоÑой изнаÑалÑно пÑоизоÑел FreeBSD' +layout: single +tags: ["4.4BSD", "design", "operating system", "BSD", "UNIX"] +title: 'ÐÑÑ Ð¸ÑекÑÑÑа и ÑеализаÑÐ¸Ñ Ð¾Ð¿ÐµÑаÑионной ÑиÑÑÐµÐ¼Ñ 4.4BSD' trademarks: ["design-44bsd"] -isIndex: true --- = ÐÑÑ Ð¸ÑекÑÑÑа и ÑеализаÑÐ¸Ñ Ð¾Ð¿ÐµÑаÑионной ÑиÑÑÐµÐ¼Ñ 4.4BSD @@ -51,9 +58,9 @@ toc::[] == ÐÐ±Ð·Ð¾Ñ Ð°ÑÑ Ð¸ÑекÑÑÑÑ 4.4BSD [[overview-facilities]] -=== СиÑÑемнÑе ÑеÑвиÑÑ 4.4BSD и ÑдÑо +=== ÐодÑиÑÑÐµÐ¼Ñ Ð¸ ÑдÑо 4.4BSD -ЯдÑо 4.4BSD пÑедоÑÑавлÑÐµÑ ÑеÑÑÑе оÑновнÑÑ ÑиÑÑемнÑÑ ÑеÑвиÑа: пÑоÑеÑÑÑ, ÑайловÑÑ ÑиÑÑемÑ, коммÑникаÑии и запÑÑк ÑиÑÑемÑ. ÐÑÐ¾Ñ Ñаздел пеÑеÑиÑлÑеÑ, в каком меÑÑе ÑÑой книги опиÑана ÐºÐ°Ð¶Ð´Ð°Ñ Ð¸Ð· ÑÑÐ¸Ñ ÑлÑжб. +ЯдÑо 4.4BSD пÑедоÑÑавлÑÐµÑ ÑеÑÑÑе базовÑÑ Ð¿Ð¾Ð´ÑиÑÑемÑ: пÑоÑеÑÑÑ, ÑайловÑÑ ÑиÑÑемÑ, коммÑникаÑии и запÑÑк ÑиÑÑемÑ. ÐÑÐ¾Ñ Ñаздел пеÑеÑиÑлÑеÑ, в каком меÑÑе ÑÑой книги опиÑана ÐºÐ°Ð¶Ð´Ð°Ñ Ð¸Ð· ÑÑÐ¸Ñ Ð¿Ð¾Ð´ÑиÑÑем. . ÐÑоÑеÑÑÑ Ð¾Ð±ÑазÑÑÑ Ð¿Ð¾Ñок ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð² адÑеÑном пÑоÑÑÑанÑÑве. ÐÐµÑ Ð°Ð½Ð¸Ð·Ð¼Ñ ÑозданиÑ, завеÑÑÐµÐ½Ð¸Ñ Ð¸ дÑÑгие ÑпÑавлÑÑÑие пÑоÑеÑÑÑ Ð¾Ð¿Ð¸ÑÐ°Ð½Ñ Ð² Ðлаве 4. ÐÐ»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ пÑоÑеÑÑа ÑиÑÑема мÑлÑÑиплекÑиÑÑÐµÑ Ð¾ÑделÑное виÑÑÑалÑное адÑеÑное пÑоÑÑÑанÑÑво; Ñакое ÑпÑавление памÑÑÑÑ Ð¾Ð±ÑÑждаеÑÑÑ Ð² Ðлаве 5. . ÐÐµÑ Ð°Ð½Ð¸Ð·Ð¼ доÑÑÑпа полÑзоваÑÐµÐ»Ñ Ðº Ñайловой ÑиÑÑеме и ÑÑÑÑойÑÑвам один и ÑÐ¾Ñ Ð¶Ðµ; обÑие аÑпекÑÑ Ð¾Ð±ÑÑждаÑÑÑÑ Ð² Ðлаве 6. Ð¤Ð°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема ÑвлÑеÑÑÑ Ð½Ð°Ð±Ð¾Ñом именованнÑÑ Ñайлов, оÑганизованнÑÑ Ð² дÑевовиднÑÑ Ð¸ÐµÑаÑÑ Ð¸Ñ ÐºÐ°Ñалогов, а опеÑаÑии по ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¸Ð¼Ð¸ пÑедÑÑÐ°Ð²Ð»ÐµÐ½Ñ Ð² Ðлаве 7. Ð¤Ð°Ð¹Ð»Ñ ÑаÑполагаÑÑÑÑ Ð½Ð° ÑÐ°ÐºÐ¸Ñ ÑизиÑеÑÐºÐ¸Ñ Ð½Ð¾ÑиÑелÑÑ , как диÑки. 4.4BSD поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ Ð½ÐµÑколÑко Ñипов оÑганизаÑии даннÑÑ Ð½Ð° диÑке, как опиÑано далее в Ðлаве 8. ÐоÑÑÑп к ÑаР¹Ð»Ð°Ð¼ на ÑдаленнÑÑ Ð¼Ð°ÑÐ¸Ð½Ð°Ñ ÑвлÑеÑÑÑ Ð¿ÑедмеÑом обÑÑÐ¶Ð´ÐµÐ½Ð¸Ñ Ð² Ðлаве 9. ÐÐ»Ñ Ð´Ð¾ÑÑÑпа к ÑиÑÑеме ТеÑÐ¼Ð¸Ð½Ð°Ð»Ñ Ð¸ÑполÑзÑÑ ÑÑÑ ÑеÑминалÑ; Ð¸Ñ ÑÑнкÑиониÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¿Ð¾ÑвÑÑена глава 10. @@ -64,11 +71,11 @@ toc::[] ==== ЯдÑо -_ЯдÑо_ ÑвлÑеÑÑÑ ÑаÑÑÑÑ ÑиÑÑемÑ, коÑоÑÐ°Ñ ÑабоÑÐ°ÐµÑ Ð² заÑиÑенном Ñежиме и ÑпÑавлÑÐµÑ Ð´Ð¾ÑÑÑпом вÑÐµÑ Ð¿Ð¾Ð»ÑзоваÑелÑÑÐºÐ¸Ñ Ð¿ÑогÑамм к низкоÑÑÐ¾Ð²Ð½ÐµÐ¼Ñ Ð°Ð¿Ð¿Ð°ÑаÑÐ½Ð¾Ð¼Ñ Ð¾Ð±ÐµÑпеÑÐµÐ½Ð¸Ñ (к пÑимеÑÑ, ЦÐУ, диÑкам, ÑеÑминалам, ÑеÑевÑм ÑвÑзÑм) и пÑогÑаммнÑм компоненÑам (к пÑимеÑÑ, Ñайловой ÑиÑÑеме, ÑеÑевÑм пÑоÑоколам). ЯдÑо пÑедоÑÑавлÑÐµÑ Ð¾ÑновнÑе ÑиÑÑемнÑе ÑÑлÑги; оно ÑÐ¾Ð·Ð´Ð°ÐµÑ Ð¿ÑоÑеÑÑÑ Ð¸ ÑпÑавлÑÐµÑ Ð¸Ð¼Ð¸, пÑедоÑÑавлÑÐµÑ ÑÑнкÑии Ð´Ð»Ñ Ð´Ð¾ÑÑÑпа к Ñайловой ÑиÑÑеме и ÑлÑжР±Ð°Ð¼ ÑвÑзи. Такие ÑÑнкÑии, назÑваемÑе _ÑиÑÑемнÑми вÑзовами_, доÑÑÑÐ¿Ð½Ñ Ð¿ÑоÑеÑÑам полÑзоваÑелей в виде библиоÑе ÑнÑÑ Ð¿Ð¾Ð´Ð¿ÑогÑамм. ÐÑи ÑиÑÑемнÑе вÑÐ·Ð¾Ð²Ñ ÑвлÑÑÑÑÑ ÐµÐ´Ð¸Ð½ÑÑвеннÑм ÑпоÑобом доÑÑÑпа к Ñаким ÑÑлÑгам. ÐодÑобно Ð¼ÐµÑ Ð°Ð½Ð¸Ð·Ð¼ ÑабоÑÑ ÑиÑÑемнÑÑ Ð²Ñзовов даеÑÑÑ Ð² Ðлаве 3, вмеÑÑе Ñ Ð¾Ð¿Ð¸Ñанием некоÑоÑÑÑ Ð¼ÐµÑ Ð°Ð½Ð¸Ð·Ð¼Ð¾Ð² ÑдÑа, ÑабоÑа коÑоÑÑÑ Ð½Ðµ ÑвлÑеÑÑÑ Ð¿ÑÑмÑм ÑезÑлÑÑаÑом пÑоÑеÑÑа, вÑполнÑÑÑего ÑиÑÑемнÑй вÑзов. +_ЯдÑо_ ÑвлÑеÑÑÑ ÑаÑÑÑÑ ÑиÑÑемÑ, коÑоÑÐ°Ñ ÑабоÑÐ°ÐµÑ Ð² заÑиÑенном Ñежиме и ÑпÑавлÑÐµÑ Ð´Ð¾ÑÑÑпом вÑÐµÑ Ð¿Ð¾Ð»ÑзоваÑелÑÑÐºÐ¸Ñ Ð¿ÑогÑамм к низкоÑÑÐ¾Ð²Ð½ÐµÐ¼Ñ Ð°Ð¿Ð¿Ð°ÑаÑÐ½Ð¾Ð¼Ñ Ð¾Ð±ÐµÑпеÑÐµÐ½Ð¸Ñ (к пÑимеÑÑ, ЦÐУ, диÑкам, ÑеÑминалам, ÑеÑевÑм ÑвÑзÑм) и пÑогÑаммнÑм компоненÑам (к пÑимеÑÑ, Ñайловой ÑиÑÑеме, ÑеÑевÑм пÑоÑоколам). ЯдÑо пÑедоÑÑавлÑÐµÑ Ð¾ÑновнÑе подÑиÑÑемÑ; оно ÑÐ¾Ð·Ð´Ð°ÐµÑ Ð¿ÑоÑеÑÑÑ Ð¸ ÑпÑавлÑÐµÑ Ð¸Ð¼Ð¸, пÑедоÑÑавлÑÐµÑ ÑÑнкÑии Ð´Ð»Ñ Ð´Ð¾ÑÑÑпа к Ñайловой ÑиÑÑеме и ÑлÑжбам ÑÐ²Ñ Ð·Ð¸. Такие ÑÑнкÑии, назÑваемÑе _ÑиÑÑемнÑми вÑзовами_, доÑÑÑÐ¿Ð½Ñ Ð¿ÑоÑеÑÑам полÑзоваÑелей в виде библиоÑеÑнÑÑ Ð¿ одпÑогÑамм. ÐÑи ÑиÑÑемнÑе вÑÐ·Ð¾Ð²Ñ ÑвлÑÑÑÑÑ ÐµÐ´Ð¸Ð½ÑÑвеннÑм ÑпоÑобом доÑÑÑпа к ÑÑим подÑиÑÑемам. ÐодÑобно Ð¼ÐµÑ Ð°Ð½Ð¸Ð·Ð¼ ÑабоÑÑ ÑиÑÑемнÑÑ Ð²Ñзовов даеÑÑÑ Ð² Ðлаве 3, вмеÑÑе Ñ Ð¾Ð¿Ð¸Ñанием некоÑоÑÑÑ Ð¼ÐµÑ Ð°Ð½Ð¸Ð·Ð¼Ð¾Ð² ÑдÑа, ÑабоÑа коÑоÑÑÑ Ð½Ðµ ÑвлÑеÑÑÑ Ð¿ÑÑмÑм ÑезÑлÑÑаÑом пÑоÑеÑÑа, вÑполнÑÑÑего ÑиÑÑемнÑй вÑзов. -_ЯдÑо_, по ÑÑадиÑионной ÑеÑминологии опеÑаÑионнÑÑ ÑиÑÑем, ÑвлÑеÑÑÑ Ð¼Ð°Ð»ÐµÐ½Ñким кÑÑком пÑогÑаммного обеÑпеÑениÑ, коÑоÑое пÑедоÑÑавлÑÐµÑ ÑолÑко минималÑнÑй Ð½Ð°Ð±Ð¾Ñ ÑÑлÑг, Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ñй Ð´Ð»Ñ ÑеализаÑии дополниÑелÑнÑÑ ÑлÑжб опеÑаÑионной ÑиÑÑемÑ. Ð ÑовÑеменнÑÑ Ð¸ÑÑледоваÑелÑÑÐºÐ¸Ñ Ð¾Ð¿ÐµÑаÑионнÑÑ ÑиÑÑÐµÐ¼Ð°Ñ - ÑÐ°ÐºÐ¸Ñ , как Chorus <<biblio-rozier, [Rozier et al, 1988]>>, Mach <<biblio-accetta, [Accetta et al, 1986]>>, Tunis <<biblio-ewens, [Ewens et al, 1985]>>, и V Kernel <<biblio-cheriton, [Cheriton, 1988]>> - Ñакое Ñазделение ÑÑнкÑиР¾Ð½Ð°Ð»ÑноÑÑи вÑполнено не ÑолÑко логиÑеÑки. Такие ÑлÑжбÑ, как ÑайловÑе ÑиÑÑÐµÐ¼Ñ Ð¸ ÑеÑевÑе пÑоÑоколÑ, вÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ñ Ð² виде пÑикладнÑÑ Ð¿ÑоÑеÑÑов клиенÑов ÑдÑа или микÑоÑдÑа. +_ЯдÑо_, по ÑÑадиÑионной ÑеÑминологии опеÑаÑионнÑÑ ÑиÑÑем, ÑвлÑеÑÑÑ Ð¼Ð°Ð»ÐµÐ½Ñким кÑÑком пÑогÑаммного обеÑпеÑениÑ, коÑоÑое пÑедоÑÑавлÑÐµÑ ÑолÑко минималÑнÑй Ð½Ð°Ð±Ð¾Ñ Ð¿Ð¾Ð´ÑиÑÑем, Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ñй Ð´Ð»Ñ ÑеализаÑии дополниÑелÑнÑÑ ÑлÑжб опеÑаÑионной ÑиÑÑемÑ. Ð ÑовÑеменнÑÑ Ð¸ÑÑледоваÑелÑÑÐºÐ¸Ñ Ð¾Ð¿ÐµÑаÑионнÑÑ ÑиÑÑÐµÐ¼Ð°Ñ â ÑÐ°ÐºÐ¸Ñ , как Chorus crossref:design-44bsd[biblio-rozier, [Rozier et al, 1988]], Mach crossref:design-44bsd[biblio-accetta, [Accetta et al, 1986]], Tunis crossref:design-44bsd[biblio-ewens, [Ewens et al, 1985]], и V Kernel crossref:design-44 bsd[biblio-cheriton, [Cheriton, 1988]] - Ñакое Ñазделение ÑÑнкÑионалÑноÑÑи вÑполнено не ÑолÑко логиÑеÑки. Такие ÑлÑжбÑ, как ÑÐ °Ð¹Ð»Ð¾Ð²Ñе ÑиÑÑÐµÐ¼Ñ Ð¸ ÑеÑевÑе пÑоÑоколÑ, вÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ñ Ð² виде пÑикладнÑÑ Ð¿ÑоÑеÑÑов клиенÑов ÑдÑа или микÑоÑдÑа. -ЯдÑо 4.4BSD не ÑазбиваеÑÑÑ Ð½Ð° неÑколÑко пÑоÑеÑÑов. ÐÑо оÑновополагаÑÑее аÑÑ Ð¸ÑекÑÑÑное ÑеÑение бÑло Ñделано в ÑамÑÑ ÑÐ°Ð½Ð½Ð¸Ñ Ð²ÐµÑÑиÑÑ UNIX. РпеÑвÑÑ Ð´Ð²ÑÑ ÑеализаÑиÑÑ Ðена ТомпÑона (Ken Thompson) не бÑло оÑобÑажаемой памÑÑи, и поÑÑÐ¾Ð¼Ñ Ð½Ðµ бÑло аппаÑаÑного ÑазлиÑÐ¸Ñ Ð¼ÐµÐ¶Ð´Ñ Ð°Ð´ÑеÑнÑм пÑоÑÑÑанÑÑвом полÑзоваÑÐµÐ»Ñ Ð¸ ÑдÑа <<biblio-ritchie, [Ritchie, 1988]>>. Ðогла Ð±Ñ Ð±ÑÑÑ Ð¿ÑидÑмана ÑиÑÑема обмена ÑообÑениÑми как ÑеалÑно ÑеализÑÐµÐ¼Ð°Ñ Ð¼Ð¾Ð´ÐµÐ»Ñ Ð¿ÑоÑеÑÑов ÑдÑа и полÑзоваÑелÑ. Ðл Ñ Ð¿ÑоÑÑоÑÑ Ð¸ ÑвелиÑÐµÐ½Ð¸Ñ Ð¿ÑоизводиÑелÑноÑÑи бÑло вÑбÑано монолиÑное ÑдÑо. Ð ÑÐ¾Ð¼Ñ Ð¶Ðµ Ñанние ÑдÑа бÑли маленÑк ими; вклÑÑение ÑÐ°ÐºÐ¸Ñ ÑлÑжб, как ÑеÑевÑе коммÑникаÑии, в ÑдÑо ÑвелиÑило его ÑазмеÑ. СовÑеменнÑе ÑенденÑии в облаÑÑи опеÑаÑионнÑÑ ÑиÑÑем ÑводÑÑÑÑ Ðº ÑменÑÑÐµÐ½Ð¸Ñ ÑазмеÑа ÑдÑа за ÑÑÐµÑ Ð¿ÐµÑевода ÑÐ°ÐºÐ¸Ñ ÑлÑжб в полÑзоваÑелÑÑкое адÑеÑное пÑоÑÑÑанÑÑво. +ЯдÑо 4.4BSD не ÑазбиваеÑÑÑ Ð½Ð° неÑколÑко пÑоÑеÑÑов. ÐÑо оÑновополагаÑÑее аÑÑ Ð¸ÑекÑÑÑное ÑеÑение бÑло Ñделано в ÑамÑÑ ÑÐ°Ð½Ð½Ð¸Ñ Ð²ÐµÑÑиÑÑ UNIX. РпеÑвÑÑ Ð´Ð²ÑÑ ÑеализаÑиÑÑ Ðена ТомпÑона (Ken Thompson) не бÑло оÑобÑажаемой памÑÑи, и поÑÑÐ¾Ð¼Ñ Ð½Ðµ бÑло аппаÑаÑного ÑазлиÑÐ¸Ñ Ð¼ÐµÐ¶Ð´Ñ Ð°Ð´ÑеÑнÑм пÑоÑÑÑанÑÑвом полÑзоваÑÐµÐ»Ñ Ð¸ ÑдÑа crossref:design-44bsd[biblio-ritchie, [Ritchie, 1988]]. Ðогла Ð±Ñ Ð±ÑÑÑ Ð¿ÑидÑмана ÑиÑÑема обмена ÑообÑениÑми как ÑеалÑно ÑеализÑÐµÐ¼Ð°Ñ Ð¼Ð¾Ð´ÐµÐ»Ñ Ð¿ÑоÑеÑÑов ÑдÑа и полÑзР¾Ð²Ð°ÑелÑ. ÐÐ»Ñ Ð¿ÑоÑÑоÑÑ Ð¸ ÑвелиÑÐµÐ½Ð¸Ñ Ð¿ÑоизводиÑелÑноÑÑи бÑло вÑбÑано монолиÑное ÑдÑо. Ð ÑÐ¾Ð¼Ñ Ð¶Ðµ Ñанние ÑдÑа Ð±Ñ Ð»Ð¸ маленÑкими; вклÑÑение ÑÐ°ÐºÐ¸Ñ Ð¿Ð¾Ð´ÑиÑÑем, как ÑеÑевÑе коммÑникаÑии, в ÑдÑо ÑвелиÑило его ÑазмеÑ. СовÑеменнÑе ÑенденÑии в облаÑÑи опеÑаÑионнÑÑ ÑиÑÑем ÑводÑÑÑÑ Ðº ÑменÑÑÐµÐ½Ð¸Ñ ÑазмеÑа ÑдÑа за ÑÑÐµÑ Ð¿ÐµÑевода ÑÐ°ÐºÐ¸Ñ ÑлÑжб в полÑзоваÑелÑÑкое адÑеÑное пÑоÑÑÑанÑÑво. ÐолÑзоваÑели обÑÑно обÑаÑÑÑÑ Ñ ÑиÑÑемой ÑеÑез инÑеÑпÑеÑаÑÐ¾Ñ ÑзÑка команд, назÑваемÑй оболоÑкой (_shell_), и, Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ, ÑеÑез дополниÑелÑнÑе пÑикладнÑе полÑзоваÑелÑÑкие пÑогÑаммÑ. Такие пÑогÑÐ°Ð¼Ð¼Ñ Ð¸ оболоÑка ÑÐµÐ°Ð»Ð¸Ð·Ð¾Ð²Ð°Ð½Ñ Ð² виде пÑоÑеÑÑов. ÐодÑобное опиÑание ÑÐ°ÐºÐ¸Ñ Ð¿ÑогÑамм вÑÑ Ð¾Ð´Ð¸Ñ Ð·Ð° Ñамки ÑÑой книги, коÑоÑÐ°Ñ Ð¿ÑакÑиÑеÑки полноÑÑÑÑ Ð¿Ð¾ÑвÑÑена ÑабоÑе ÑдÑа. @@ -79,109 +86,45 @@ _ЯдÑо_, по ÑÑадиÑионной ÑеÑминологии опеÑÐ°Ñ Ð ÑÑом Ñазделе Ð¼Ñ ÑаÑÑмаÑÑиваем оÑганизаÑÐ¸Ñ ÑдÑа 4.4BSD Ñ Ð´Ð²ÑÑ ÑоÑек зÑениÑ: +[arabic] . Ðак ÑÑаÑиÑеÑкий блок пÑогÑаммного обеÑпеÑениÑ, каÑегоÑизÑемÑй по ÑÑнкÑионалÑноÑÑи модÑлей, ÑоÑÑавлÑÑÑÐ¸Ñ ÑдÑо . Рего динамике, каÑегоÑизÑемой по ÑÑлÑгам, пÑедоÑÑавлÑемÑм полÑзоваÑелÑм Ð¡Ð°Ð¼Ð°Ñ Ð±Ð¾Ð»ÑÑÐ°Ñ ÑаÑÑÑ ÑдÑа ÑеализÑÐµÑ ÑиÑÑемнÑе ÑÑлÑги, к коÑоÑÑм пÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¾Ð±ÑаÑаÑÑÑÑ ÑеÑез ÑиÑÑемнÑе вÑзовÑ. Ð 4.4BSD ÑÑо пÑогÑаммное обеÑпеÑение оÑганизÑеÑÑÑ Ð¿Ð¾ ÑледÑÑÑим пÑинÑипам: -* ÐазовÑе ÑÑлÑги ÑдÑа: обÑабоÑка ÑаймеÑов и ÑиÑÑемного ÑаймеÑа, ÑпÑавление деÑкÑипÑоÑами и пÑоÑеÑÑами +* ÐазовÑе подÑиÑÑÐµÐ¼Ñ ÑдÑа: обÑабоÑка ÑаймеÑов и ÑиÑÑемного ÑаймеÑа, ÑпÑавление деÑкÑипÑоÑами и пÑоÑеÑÑами * ÐоддеÑжка ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð°Ð¼ÑÑÑÑ: подкаÑка и вÑгÑÑзка * ÐбÑеÑиÑÑемнÑе инÑеÑÑейÑÑ: ввод/вÑвод, ÑпÑавление и мÑлÑÑиплекÑиÑование опеÑаÑий, вÑполнÑемÑÑ Ð½Ð°Ð´ деÑкÑипÑоÑами * Ð¤Ð°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема: ÑайлÑ, каÑалоги, пÑеобÑазование маÑÑÑÑÑов, блокиÑовка Ñайлов и ÑпÑавление бÑÑеÑом ввода/вÑвода * ÐоддеÑжка ÑабоÑÑ Ñ ÑеÑминалами: дÑÐ°Ð¹Ð²ÐµÑ ÑеÑминалÑного инÑеÑÑейÑа и ÑÐµÐ¶Ð¸Ð¼Ñ ÑабоÑÑ ÑеÑминалÑного канала -* СлÑÐ¶Ð±Ñ Ð¼ÐµÐ¶Ð¿ÑоÑеÑÑного взаимодейÑÑвиÑ: ÑокеÑÑ -* ÐоддеÑжка ÑеÑевÑÑ ÐºÐ¾Ð¼Ð¼ÑникаÑий: коммÑникаÑионнÑе пÑоÑÐ¾ÐºÐ¾Ð»Ñ Ð¸ обÑеÑеÑевÑе ÑлÑжбÑ, Ñакие, как маÑÑÑÑÑизаÑÐ¸Ñ +* ÐодÑиÑÑÐµÐ¼Ñ Ð¼ÐµÐ¶Ð¿ÑоÑеÑÑного взаимодейÑÑвиÑ: ÑокеÑÑ +* ÐоддеÑжка ÑеÑевÑÑ ÐºÐ¾Ð¼Ð¼ÑникаÑий: коммÑникаÑионнÑе пÑоÑÐ¾ÐºÐ¾Ð»Ñ Ð¸ обÑеÑеÑевÑе подÑиÑÑемÑ, Ñакие, как маÑÑÑÑÑизаÑÐ¸Ñ -[[table-mach-indep]] .ÐаÑинно-незавиÑимое пÑогÑаммное обеÑпеÑение в ÑдÑе 4.4BSD -[cols="1,1,1", frame="none", options="header,footer"] +[[table-mach-indep]] +[cols=",,", options="header"] |=== -| ÐаÑегоÑÐ¸Ñ -| ÐолиÑеÑÑво ÑÑÑок кода -| ÐÑоÑÐµÐ½Ñ Ð¾Ñ Ð²Ñего ÑдÑа - -|ÑÐ°Ð¹Ð»Ñ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ¾Ð² -|9,393 -|4.6 - -|иниÑиализаÑÐ¸Ñ -|1,107 -|0.6 - -|ÑлÑÐ¶Ð±Ñ ÑдÑа -|8,793 -|4.4 - -|обÑеÑиÑÑемнÑе инÑеÑÑейÑÑ -|4,782 -|2.4 - -|межпÑоÑеÑÑное взаимодейÑÑвие -|4,540 -|2.2 - -|ÑабоÑа Ñ ÑеÑминалами -|3,911 -|1.9 - -|виÑÑÑалÑÐ½Ð°Ñ Ð¿Ð°Ð¼ÑÑÑ -|11,813 -|5.8 - -|ÑпÑавление vnode -|7,954 -|3.9 - -|именование Ñайловой ÑиÑÑÐµÐ¼Ñ -|6,550 -|3.2 - -|Ñ Ñанение Ñайлов -|4,365 -|2.2 - -|Ñ Ñанение log-ÑÑÑÑкÑÑÑ -|4,337 -|2.1 - -|Ñ Ñанение на оÑнове памÑÑи -|645 -|0.3 - -|ÑÐ°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема cd9660 -|4,177 -|2.1 - -|ÑазлиÑнÑе ÑайловÑе ÑиÑÑÐµÐ¼Ñ (10) -|12,695 -|6.3 - -|ÑеÑÐµÐ²Ð°Ñ ÑÐ°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема -|17,199 -|8.5 - -|ÑеÑевое взаимодейÑÑвие -|8,630 -|4.3 - -|пÑоÑÐ¾ÐºÐ¾Ð»Ñ internet -|11,984 -|5.9 - -|пÑоÑÐ¾ÐºÐ¾Ð»Ñ ISO -|23,924 -|11.8 - -|пÑоÑÐ¾ÐºÐ¾Ð»Ñ X.25 -|10,626 -|5.3 - -|пÑоÑÐ¾ÐºÐ¾Ð»Ñ XNS -|5,192 -|2.6 -| вÑего маÑинно-незавиÑÐ¸Ð¼Ð°Ñ ÑаÑÑÑ -| 162,617 -| 80.4 +|ÐаÑегоÑÐ¸Ñ |СÑÑок кода |ÐÑоÑÐµÐ½Ñ Ð¾Ñ ÑÑÑок ÑдÑа +|заголовки |9,393 |4.6 +|иниÑиализаÑÐ¸Ñ |1,107 |0.6 +|подÑиÑÑÐµÐ¼Ñ ÑдÑа |8,793 |4.4 +|ÑнивеÑÑалÑнÑе инÑеÑÑейÑÑ |4,782 |2.4 +|межпÑоÑеÑÑное взаимодейÑÑвие |4,540 |2.2 +|ÑабоÑа Ñ ÑеÑминалом |3,911 |1.9 +|ÐиÑÑÑалÑÐ½Ð°Ñ Ð¿Ð°Ð¼ÑÑÑ |11,813 |5.8 +|ÑпÑавление vnode |7,954 |3.9 +|имена в Ñайловой ÑиÑÑÐµÐ¼Ñ |6,550 |3.2 +|бÑÑÑÑое Ñ ÑанилиÑе Ñайлов |4,365 |2.2 +|логиÑеÑÐºÐ°Ñ ÑÑÑÑкÑÑÑа Ñайлового Ñ ÑанилиÑа |4,337 |2.1 +|Ñ ÑанилиÑе Ñайлов в памÑÑи |645 |0.3 +|cd9660 ÑÐ°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема |4,177 |2.1 +|ÑазлиÑнÑе ÑайловÑе ÑиÑÑÐµÐ¼Ñ (10) |12,695 |6.3 +|ÑеÑÐµÐ²Ð°Ñ ÑÐ°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема |17,199 |8.5 +|ÑеÑевое взаимодейÑÑвие |8,630 |4.3 +|инÑеÑнеÑ-пÑоÑÐ¾ÐºÐ¾Ð»Ñ |11,984 |5.9 +|пÑоÑÐ¾ÐºÐ¾Ð»Ñ ISO |23,924 |11.8 +|пÑоÑÐ¾ÐºÐ¾Ð»Ñ X.25 |10,626 |5.3 +|пÑоÑÐ¾ÐºÐ¾Ð»Ñ XNS |5,192 |2.6 |=== ÐолÑÑÐ°Ñ ÑаÑÑÑ Ð¿ÑогÑаммного обеÑпеÑÐµÐ½Ð¸Ñ Ð² ÑÑÐ¸Ñ ÐºÐ°ÑегоÑиÑÑ ÑвлÑеÑÑÑ Ð¼Ð°Ñинно-незавиÑимой и пеÑеноÑима Ð¼ÐµÐ¶Ð´Ñ ÑазлиÑнÑми аппаÑаÑнÑми аÑÑ Ð¸ÑекÑÑÑами. @@ -194,47 +137,21 @@ _ЯдÑо_, по ÑÑадиÑионной ÑеÑминологии опеÑÐ°Ñ * ÐонÑигÑÑаÑÐ¸Ñ Ð¸ иниÑиализаÑÐ¸Ñ Ð°Ð¿Ð¿Ð°ÑаÑнÑÑ ÑÑÑÑойÑÑв * ÐоддеÑжка ÑÑÑÑойÑÑв ввода/вÑвода во вÑÐµÐ¼Ñ ÑабоÑÑ -[[table-mach-dep]] .ÐаÑинно-завиÑимое пÑогÑаммное обеÑпеÑение Ð´Ð»Ñ HP300 в ÑдÑе 4.4BSD -[cols="1,1,1", frame="none", options="header,footer"] +[[table-mach-dep]] +[cols=",,", options="header"] |=== -| ÐаÑегоÑÐ¸Ñ -| ÐолиÑеÑÑво ÑÑÑок кода -| ÐÑоÑÐµÐ½Ñ Ð¾Ñ Ð²Ñего ÑдÑа - -|маÑинно-завиÑимÑе заголовки -|1,562 -|0.8 - -|заголовки дÑайвеÑов ÑÑÑÑойÑÑв -|3,495 -|1.7 - -|иÑÑ Ð¾Ð´Ð½Ñе ÑекÑÑÑ Ð´ÑайвеÑов ÑÑÑÑойÑÑв -|17,506 -|8.7 - -|виÑÑÑалÑÐ½Ð°Ñ Ð¿Ð°Ð¼ÑÑÑ -|3,087 -|1.5 - -|оÑÑалÑÐ½Ð°Ñ Ð¼Ð°Ñинно-завиÑÐ¸Ð¼Ð°Ñ ÑаÑÑÑ -|6,287 -|3.1 - -|пÑоÑедÑÑÑ Ð½Ð° аÑÑемблеÑе -|3,014 -|1.5 - -|ÑовмеÑÑимоÑÑÑ Ñ HP/UX -|4,683 -|2.3 -| вÑего маÑинно-завиÑÐ¸Ð¼Ð°Ñ ÑаÑÑÑ -| 39,634 -| 19.6 +|ÐаÑегоÑÐ¸Ñ |СÑÑок кода |ÐÑоÑÐµÐ½Ñ Ð¾Ñ ÑÑÑок ÑдÑа +|заголовоÑнÑе ÑайлÑ, завиÑимÑе Ð¾Ñ Ð¼Ð°ÑÐ¸Ð½Ñ |1,562 |0.8 +|заголовоÑнÑе ÑÐ°Ð¹Ð»Ñ Ð´ÑайвеÑов ÑÑÑÑойÑÑв |3,495 |1.7 +|иÑÑ Ð¾Ð´Ð½Ñй код дÑайвеÑов ÑÑÑÑойÑÑв |17,506 |8.7 +|ÐиÑÑÑалÑÐ½Ð°Ñ Ð¿Ð°Ð¼ÑÑÑ |3,087 |1.5 +|код, завиÑÑÑий Ð¾Ñ Ð´ÑÑÐ³Ð¸Ñ Ð¼Ð°Ñин |6,287 |3.1 +|подпÑогÑÐ°Ð¼Ð¼Ñ Ð½Ð° ÑзÑке аÑÑемблеÑа |3,014 |1.5 +|ÑовмеÑÑимоÑÑÑ Ñ HP/UX |4,683 |2.3 |=== -<<table-mach-indep>> ÑÑммаÑизÑÐµÑ Ð¼Ð°Ñинно-незавиÑимÑй код, коÑоÑÑй ÑоÑÑавлÑÐµÑ ÑдÑо 4.4BSD Ð´Ð»Ñ HP300. ЧиÑла во вÑоÑой колонке обознаÑаÑÑ ÐºÐ¾Ð»Ð¸ÑеÑÑво ÑÑÑок иÑÑ Ð¾Ð´Ð½Ð¾Ð³Ð¾ кода на ÑзÑке C, заголовоÑнÑÑ Ñайлов и аÑÑемблеÑного кода. ÐÑакÑиÑеÑки веÑÑ ÐºÐ¾Ð´ ÑдÑа напиÑан на ÑзÑке пÑогÑаммиÑÐ¾Ð²Ð°Ð½Ð¸Ñ C; менее двÑÑ Ð¿ÑоÑенÑов напиÑано на ÑзÑке аÑÑемблеÑа. Ðак показÑÐ²Ð°ÐµÑ ÑÑаÑиÑÑика в <<table-mach-dep>>, маÑинно-завиÑимÑй код, не вклÑÑаÑÑий поддеÑÐ¶ÐºÑ HP/UX и ÑÑÑÑойÑÑв, ÑоÑÑавлÑÐµÑ Ð¼Ð µÐ½ÐµÐµ 6.9 пÑоÑенÑа ÑдÑа. +crossref:design-44bsd[table-mach-indep, ÐаÑинно-незавиÑимое пÑогÑаммное обеÑпеÑение в ÑдÑе 4.4BSD] показÑÐ²Ð°ÐµÑ ÑÑаÑиÑÑÐ¸ÐºÑ Ð¼Ð°Ñинно-незавиÑимого кода, коÑоÑÑй ÑоÑÑавлÑÐµÑ ÑдÑо 4.4BSD Ð´Ð»Ñ HP300. ЧиÑла во вÑоÑой колонке обознаÑаÑÑ ÐºÐ¾Ð»Ð¸ÑеÑÑво ÑÑÑок иÑÑ Ð¾Ð´Ð½Ð¾Ð³Ð¾ кода на ÑзÑке C, заголовоÑнÑÑ Ñайлов и аÑÑемблеÑного кода. ÐÑакÑиÑеÑки веÑÑ ÐºÐ¾Ð´ ÑдÑа напиÑан на ÑзÑке пÑогÑаммиÑÐ¾Ð²Ð°Ð½Ð¸Ñ C; менее двÑÑ Ð¿ÑоÑенÑов напиÑано на ÑзÑке аÑÑемблеÑа. Ðак показÑÐ²Ð°ÐµÑ ÑÑаÑиÑÑика в crossref:desig n-44bsd[table-mach-dep, ÐаÑинно-завиÑимое пÑогÑаммное обеÑпеÑение Ð´Ð»Ñ HP300 в ÑдÑе 4.4BSD], маÑинно-завиÑимÑй код, не вклÑÑÐ°Ñ Ñий поддеÑÐ¶ÐºÑ HP/UX и ÑÑÑÑойÑÑв, ÑоÑÑавлÑÐµÑ Ð¼ÐµÐ½ÐµÐµ 6.9 пÑоÑенÑа ÑдÑа. ÐиÑÑ Ð¼Ð°Ð»Ð°Ñ ÑаÑÑÑ ÑдÑа оÑвеÑÐ°ÐµÑ Ð·Ð° иниÑиализаÑÐ¸Ñ ÑиÑÑемÑ. ÐÑÐ¾Ñ ÐºÐ¾Ð´ иÑполÑзÑеÑÑÑ Ð¿Ñи _наÑалÑной загÑÑзке_ ÑиÑÑÐµÐ¼Ñ Ð´Ð»Ñ Ð¿ÐµÑÐµÑ Ð¾Ð´Ð° в ÑабоÑий Ñежим и оÑвеÑÐ°ÐµÑ Ð·Ð° наÑÑÑÐ¾Ð¹ÐºÑ Ð°Ð¿Ð¿Ð°ÑаÑного и пÑогÑаммного окÑÑÐ¶ÐµÐ½Ð¸Ñ ÑдÑа (обÑаÑиÑеÑÑ Ðº Ðлаве 14). ÐекоÑоÑÑе опеÑаÑионнÑе ÑиÑÑÐµÐ¼Ñ (оÑобенно Ñе, ÑÑо огÑаниÑÐµÐ½Ñ Ð¾Ð±Ñемом ÑизиÑеÑкой памÑÑи) вÑполнÑÑÑ Ð´ÐµÐ¹ÑÑÐ²Ð¸Ñ Ð¿Ð¾ вÑгÑÑзке или _пеÑекÑÑÑиÑ_ пÑогÑаммного кода, вÑполнÑÑÑего ÑÑи ÑÑнкÑии, поÑле оконÑÐ°Ð½Ð¸Ñ ÐµÐ³Ð¾ ÑабР¾ÑÑ. ЯдÑо 4.4BSD не ÑабоÑÐ°ÐµÑ Ð¿Ð¾Ð²ÑоÑно Ñ Ð¿Ð°Ð¼ÑÑÑÑ, иÑполÑзованной наÑалÑнÑм кодом, поÑÐ¾Ð¼Ñ ÑÑо ÑÑÐ¾Ñ Ð¾Ð±Ñем памÑÑи Ñо ÑÑавлÑÐµÑ Ð¼ÐµÐ½ÐµÐµ 0.5 пÑоÑенÑов ÑеÑÑÑÑов ÑдÑа, иÑполÑзÑемÑÑ Ð½Ð° ÑипиÑной маÑине. Также наÑалÑнÑй код не Ð½Ð°Ñ Ð¾Ð´Ð¸ÑÑÑ ÑолÑко в одном меÑÑе ÑдÑа - он ÑаÑÑÑедоÑоÑен везде, и обÑÑно поÑвлÑеÑÑÑ Ñам, где логиÑеÑки ÑвÑзан Ñ Ð¾Ð±ÑекÑом иниÑиализаÑии. @@ -256,9 +173,9 @@ _ЯдÑо_, по ÑÑадиÑионной ÑеÑминологии опеÑÐ°Ñ [[fig-process-lifecycle]] .ÐизненнÑй Ñикл пÑоÑеÑÑа -image::fig1.png[СиÑÑемнÑе вÑÐ·Ð¾Ð²Ñ ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿ÑоÑеÑÑами] +image:fig1.png[ÐизненнÑй Ñикл пÑоÑеÑÑа] -ÐизненнÑй Ñикл пÑоÑеÑÑа изобÑажен на <<fig-process-lifecycle>>. ÐÑоÑеÑÑ Ð¼Ð¾Ð¶ÐµÑ ÑоздаÑÑ Ð½Ð¾Ð²Ñй пÑоÑеÑÑ, коÑоÑÑй ÑвлÑеÑÑÑ ÐºÐ¾Ð¿Ð¸ÐµÐ¹ иÑÑ Ð¾Ð´Ð½Ð¾Ð³Ð¾ пÑоÑеÑÑа Ñ Ð¿Ð¾Ð¼Ð¾ÑÑÑ ÑиÑÑемного вÑзова _fork_. ÐозвÑÐ°Ñ Ð¸Ð· вÑзова _fork_ пÑоиÑÑ Ð¾Ð´Ð¸Ñ Ð´Ð²Ð° Ñаза: один Ñаз в ÑодиÑелÑÑком пÑоÑеÑÑе, в коÑоÑом возвÑаÑаемое знаÑение ÑвлÑеÑÑÑ Ð¸Ð´ÐµÐ½ÑиÑикаÑоÑом поÑожденного пÑоÑеÑÑа, и вÑоÑой Ñаз в поÑожденном пÑоÑеÑÑе, в коÑоÑом возвÑаÑаемое знаÑение Ñавно 0. СвÑÐ·Ñ ÑодиÑелÑ-поÑомок поÑÐ¾Ð¶Ð´Ð°ÐµÑ Ð¸ÐµÑаÑÑ Ð¸ÑеÑкÑÑ ÑÑÑÑкÑÑÑÑ Ð¿ÑоÑеÑÑов в ÑиÑÑеме. ÐовÑй пÑоÑеÑÑ Ð¸Ð¼ÐµÐµÑ Ð´Ð¾ÑÑÑп ко вÑем ÑеÑÑÑÑам его ÑодиÑелÑ, Ñаки м, как ÑайловÑе деÑкÑипÑоÑÑ, ÑоÑÑоÑние обÑабоÑки Ñигналов и ÑаÑпÑеделение памÑÑи. +ÐизненнÑй Ñикл пÑоÑеÑÑа изобÑажен на ÑиÑÑнке crossref:design-44bsd[fig-process-lifecycle,ÐизненнÑй Ñикл пÑоÑеÑÑа]. ÐÑоÑеÑÑ Ð¼Ð¾Ð¶ÐµÑ ÑоздаÑÑ Ð½Ð¾Ð²Ñй пÑоÑеÑÑ, коÑоÑÑй ÑвлÑеÑÑÑ ÐºÐ¾Ð¿Ð¸ÐµÐ¹ иÑÑ Ð¾Ð´Ð½Ð¾Ð³Ð¾ пÑоÑеÑÑа Ñ Ð¿Ð¾Ð¼Ð¾ÑÑÑ ÑиÑÑемного вÑзова _fork_. ÐозвÑÐ°Ñ Ð¸Ð· вÑзова _fork_ пÑоиÑÑ Ð¾Ð´Ð¸Ñ Ð´Ð²Ð° Ñаза: один Ñаз в ÑодиÑелÑÑком пÑоÑеÑÑе, в коÑоÑом возвÑаÑаемое знаÑение ÑвлÑеÑÑÑ Ð¸Ð´ÐµÐ½ÑиÑикаÑоÑом поÑожденного пÑоÑеÑÑа, и вÑоÑой Ñаз в поÑожденном пÑоÑеÑÑе, в коÑоÑом возвÑаÑаемое знаÑени е Ñавно 0. СвÑÐ·Ñ ÑодиÑелÑ-поÑомок поÑÐ¾Ð¶Ð´Ð°ÐµÑ Ð¸ÐµÑаÑÑ Ð¸ÑеÑкÑÑ ÑÑÑÑкÑÑÑÑ Ð¿ÑоÑеÑÑов в ÑиÑÑеме. ÐовÑй пÑоÑеÑÑ Ð¸Ð¼ÐµÐµÑ Ð´Ð¾ÑÑÑп ко вÑем ÑеÑÑÑÑам его ÑодиÑелÑ, Ñаким, как ÑайловÑе деÑкÑипÑоÑÑ, ÑоÑÑоÑние обÑабоÑки Ñигналов и ÑаÑпÑеделение памÑÑи. ХоÑÑ ÐµÑÑÑ ÑиÑÑаÑии, когда пÑоÑеÑÑ Ð´Ð¾Ð»Ð¶ÐµÐ½ бÑÑÑ ÐºÐ¾Ð¿Ð¸ÐµÐ¹ Ñвоего ÑодиÑелÑ, наиболее ÑипиÑнÑм и полезнÑм дейÑÑвием ÑвлÑеÑÑÑ Ð·Ð°Ð³ÑÑзка и вÑполнение дÑÑгой пÑогÑаммÑ. ÐÑоÑеÑÑ Ð¼Ð¾Ð¶ÐµÑ Ð·Ð°Ð¼ÐµÑÑиÑÑ ÑÐµÐ±Ñ Ð¾Ð±Ñазом памÑÑи дÑÑгой пÑогÑаммÑ, пеÑÐµÐ´Ð°Ð²Ð°Ñ Ð²Ð½Ð¾Ð²Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð½Ð¾Ð¼Ñ Ð¾Ð±ÑÐ°Ð·Ñ Ð½Ð°Ð±Ð¾Ñ Ð¿Ð°ÑамеÑÑов, пÑи помоÑи ÑиÑÑемного вÑзова _execve_. Ðдним из паÑамеÑÑов ÑвлÑеÑÑÑ Ð¸Ð¼Ñ Ñайла, ÑодеÑжимое коÑоÑого Ð¸Ð¼ÐµÐµÑ ÑоÑмаÑе, ÑаÑпознаваемÑй ÑиÑÑемой - ÑÑо либо двоиÑнÑй вÑполн ÑемÑй Ñайл, либо Ñайл, коÑоÑÑй пÑÐ¸Ð²Ð¾Ð´Ð¸Ñ Ðº запÑÑÐºÑ Ñказанной пÑогÑÐ°Ð¼Ð¼Ñ Ð¸Ð½ÑеÑпÑеÑаÑии Ð´Ð»Ñ Ð¾Ð±ÑабоÑки его ÑÐ¾Ð´ÐµÑ Ð¶Ð¸Ð¼Ð¾Ð³Ð¾. @@ -268,7 +185,7 @@ image::fig1.png[СиÑÑемнÑе вÑÐ·Ð¾Ð²Ñ ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿ÑоÑе ÐодÑобное опиÑание Ñого, как ÑдÑо ÑÐ¾Ð·Ð´Ð°ÐµÑ Ð¸ ÑниÑÑÐ¾Ð¶Ð°ÐµÑ Ð¿ÑоÑеÑÑÑ, даеÑÑÑ Ð² Ðлаве 5. -ÐланиÑование вÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð¿ÑоÑеÑÑов оÑÑÑеÑÑвлÑеÑÑÑ ÑоглаÑно паÑамеÑÑÑ _пÑиоÑиÑеÑноÑÑи пÑоÑеÑÑа_. ÐÑÐ¾Ñ Ð¿ÑиоÑиÑÐµÑ ÑпÑавлÑеÑÑÑ Ð°Ð»Ð³Ð¾ÑиÑмом планиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð·Ð°Ð´Ð°Ñ Ð² ÑдÑе. ÐолÑзоваÑели могÑÑ Ð²Ð»Ð¸ÑÑÑ Ð½Ð° вÑполнение пÑоÑеÑÑа, Ð·Ð°Ð´Ð°Ð²Ð°Ñ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ (_nice_), коÑоÑÑй влиÑÐµÑ Ð½Ð° ÑÑммаÑнÑй пÑиоÑиÑеÑ, но но огÑаниÑен иÑполÑзованием ÑеÑÑÑÑов CPU ÑоглаÑно алгоÑиÑÐ¼Ñ Ð¿Ð»Ð°Ð½Ð¸ÑовÑика Ð·Ð°Ð´Ð°Ñ ÑдÑа. +ÐланиÑование вÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð¿ÑоÑеÑÑов оÑÑÑеÑÑвлÑеÑÑÑ ÑоглаÑно паÑамеÑÑÑ _пÑиоÑиÑеÑноÑÑи пÑоÑеÑÑа_. ÐÑÐ¾Ñ Ð¿ÑиоÑиÑÐµÑ ÑпÑавлÑеÑÑÑ Ð°Ð»Ð³Ð¾ÑиÑмом планиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð·Ð°Ð´Ð°Ñ Ð² ÑдÑе. ÐолÑзоваÑели могÑÑ Ð²Ð»Ð¸ÑÑÑ Ð½Ð° вÑполнение пÑоÑеÑÑа, Ð·Ð°Ð´Ð°Ð²Ð°Ñ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ (_nice_), коÑоÑÑй влиÑÐµÑ Ð½Ð° ÑÑммаÑнÑй пÑиоÑиÑеÑ, но огÑаниÑен иÑполÑзованием ÑеÑÑÑÑов CPU ÑоглаÑно алгоÑиÑÐ¼Ñ Ð¿Ð»Ð°Ð½Ð¸ÑовÑика Ð·Ð°Ð´Ð°Ñ ÑдÑа. ==== Ð¡Ð¸Ð³Ð½Ð°Ð»Ñ @@ -307,11 +224,11 @@ image::fig1.png[СиÑÑемнÑе вÑÐ·Ð¾Ð²Ñ ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿ÑоÑе Ð 4.2BSD ÑÑебовалоÑÑ ÑеализоваÑÑ Ð¿Ð¾Ð´Ð´ÐµÑÐ¶ÐºÑ Ð±Ð¾Ð»ÑÑÐ¸Ñ Ð½ÐµÑвÑзаннÑÑ Ð°Ð´ÑеÑнÑÑ Ð¿ÑоÑÑÑанÑÑв, оÑобÑажаемÑÑ Ð² памÑÑÑ Ñайлов и ÑовмеÑÑно иÑполÑзÑемой памÑÑи. ÐÑл ÑпÑоекÑиÑован инÑеÑÑейÑ, коÑоÑÑй назвали _mmap_, позволÑÑÑий неÑвÑзаннÑм пÑоÑеÑÑам запÑаÑиваÑÑ Ð¾ÑобÑажение в Ð¸Ñ Ð°Ð´ÑеÑное пÑоÑÑÑанÑÑво Ñайла в Ñежиме ÑовмеÑÑного иÑполÑзованиÑ. ÐÑли неÑколÑко пÑоÑеÑÑов оÑобÑажаÑÑ Ð² Ñвое адÑеÑное пÑоÑÑÑанÑÑво один и ÑÐ¾Ñ Ð¶Ðµ Ñайл, Ñо изменение адÑеÑного пÑоÑÑÑанÑÑва пÑоÑеÑÑа, ÑооÑвеÑÑÑвÑÑÑего ÑайлÑ, в одном пÑоÑеÑÑе, бÑÐ´ÐµÑ Ð¾ÑобÑажено в облаÑÑи оÑобÑÐ°Ð¶ÐµÐ½Ð¸Ñ ÑÑÐ ¾Ð³Ð¾ Ñайла в дÑÑгом пÑоÑеÑÑе, а Ñакже и в Ñамом Ñайле. Ðднако в конÑе конÑов 4.2BSD бÑла вÑпÑÑена без инÑеÑÑейÑа _mmap_ из-за Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ÑÑи ÑделаÑÑ Ð² пеÑвÑÑ Ð¾ÑеÑÐµÐ´Ñ Ð´ÑÑгие возможноÑÑи, Ñакие, как ÑабоÑа Ñ ÑеÑÑÑ. -ÐаÑем ÑазÑабоÑка инÑеÑÑейÑа _mmap_ пÑодолжалаÑÑ Ð²Ð¾ вÑÐµÐ¼Ñ ÑабоÑÑ Ð½Ð°Ð´ 4.3BSD. Ðолее 40 компаний и иÑÑледоваÑелÑÑÐºÐ¸Ñ Ð³ÑÑпп пÑинимали ÑÑаÑÑие в обÑÑждениÑÑ , коÑоÑÑе пÑивели к поÑÐ²Ð»ÐµÐ½Ð¸Ñ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ð¾Ð¹ конÑепÑии, опиÑанной в Berkeley Software Architecture Manual <<biblio-mckusick-1, [McKusick et al, 1994]>>. ÐеÑколÑко компаний Ñеализовали ÑÑÐ¾Ñ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñй инÑеÑÑÐµÐ¹Ñ <<biblio-gingell, [Gingell et al, 1987]>>. +ÐаÑем ÑазÑабоÑка инÑеÑÑейÑа _mmap_ пÑодолжалаÑÑ Ð²Ð¾ вÑÐµÐ¼Ñ ÑабоÑÑ Ð½Ð°Ð´ 4.3BSD. Ðолее 40 компаний и иÑÑледоваÑелÑÑÐºÐ¸Ñ Ð³ÑÑпп пÑинимали ÑÑаÑÑие в обÑÑждениÑÑ , коÑоÑÑе пÑивели к поÑÐ²Ð»ÐµÐ½Ð¸Ñ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ð¾Ð¹ конÑепÑии, опиÑанной в Berkeley Software Architecture Manual crossref:design-44bsd[biblio-mckusick-1, [McKusick et al, 1994]]. ÐеÑколÑко компаний Ñеализовали ÑÑÐ¾Ñ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñй инÑеÑÑÐµÐ¹Ñ crossref:design-44bsd[biblio-gingell, [Gingell et al, 1987]]. Ð Ñнова ÑÑоки ÑазÑабоÑки не позволили вклÑÑиÑÑ Ð² 4.3BSD ÑеализаÑÐ¸Ñ ÑÑого инÑеÑÑейÑа. ХоÑÑ Ð¿Ð¾Ð·Ð¶Ðµ она могла бÑÑÑ Ð²ÑÑÑоена в имеÑÑÑÑÑÑ Ð¿Ð¾Ð´ÑиÑÑÐµÐ¼Ñ Ð²Ð¸ÑÑÑалÑной памÑÑи 4.3BSD, ÑазÑабоÑÑики ÑеÑили не вклÑÑаÑÑ ÐµÐµ ÑÑда. поÑÐ¾Ð¼Ñ ÑÑо ÑÑой ÑеализаÑии бÑло Ñже более 10 леÑ. Ðолее Ñого, оÑигиналÑÐ½Ð°Ñ Ð°ÑÑ Ð¸ÑекÑÑÑа виÑÑÑалÑной памÑÑи бÑла оÑнована на пÑедположении, ÑÑо компÑÑÑеÑÐ½Ð°Ñ Ð¿Ð°Ð¼ÑÑÑ Ð¼Ð°Ð»Ð° и доÑога, а диÑки подклÑÑÐµÐ½Ñ Ð½ÐµÐ¿Ð¾ÑÑедÑÑвенно к компÑÑÑеÑÑ, бÑÑÑ ÑÑ Ð¸ деÑевÑ. ÐоÑÑÐ¾Ð¼Ñ Ð¿Ð¾Ð´ÑиÑÑема виÑÑÑалÑной памÑÑи бÑла ÑазÑабоÑана Ñ ÑпоÑом на беÑежное иÑполÑзование Ð¿Ð°Ð¼Ñ Ñи Ñеной более ÑаÑÑÑÑ Ð¾Ð±ÑаÑений к диÑкÑ. Ðдобавок ÑеализаÑÐ¸Ñ Ð² 4.3BSD бÑла пÑонизана завиÑимоÑÑÑми Ð¾Ñ Ð°Ð¿Ð¿Ð°ÑаÑной ÑиÑÑÐµÐ¼Ñ ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð°Ð¼ÑÑÑÑ Ð¼Ð°Ñин VAX, ÑÑо пÑепÑÑÑÑвовало ее пеÑеноÑÑ Ð½Ð° дÑÑгие аппаÑаÑнÑе плаÑÑоÑмÑ. РнаконеÑ, подÑиÑÑема виÑÑÑалÑной памÑÑи не бÑла пÑедназнаÑена Ð´Ð»Ñ Ð¿Ð¾Ð´Ð´ÐµÑжки ÑвÑзнÑÑ Ð¼Ð½Ð¾Ð³Ð¾Ð¿ÑоÑеÑÑоÑнÑÑ ÑиÑÑем, коÑоÑÑе ÑейÑÐ°Ñ ÑÑановÑÑÑÑ Ð²Ñе более ÑаÑпÑоÑÑÑаненнÑми и Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ñми. -ÐопÑÑки поÑÑепенно ÑÑовеÑÑенÑÑвоваÑÑ ÑÑаÑÑÑ ÑеализаÑÐ¸Ñ Ð·Ð°Ð²ÐµÐ´Ð¾Ð¼Ð¾ бÑли обÑеÑÐµÐ½Ñ Ð½Ð° неÑдаÑÑ. ÐолноÑÑÑÑ Ð½Ð¾Ð²Ð°Ñ Ð°ÑÑ Ð¸ÑекÑÑÑа, Ñ Ð´ÑÑгой ÑÑоÑонÑ, могла Ð±Ñ Ð¸ÑполÑзоваÑÑ Ð±Ð¾Ð»ÑÑие обÑÐµÐ¼Ñ Ð¿Ð°Ð¼ÑÑи, ÑменÑÑиÑÑ Ð´Ð¸ÑковÑе опеÑаÑии и обеÑпеÑиваÑÑ ÑабоÑÑ Ñ Ð½ÐµÑколÑкими пÑоÑеÑÑоÑами. ÐаконеÑ, ÑиÑÑема виÑÑÑалÑной памÑÑи в 4.4BSD бÑла полноÑÑÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð°. СиÑÑема виÑÑÑалÑной памÑÑи 4.4BSD оÑнована на ÑиÑÑеме виÑÑÑалÑной памÑÑи (VM) Mach 2.0 <<biblio-tevanian, [Tevanian, 1987]>> Ñ Ð·Ð°Ð¸ мÑÑвованиÑми из Mach 2.5 и Mach 3.0. Рней бÑла ÑÑÑекÑÐ¸Ð²Ð½Ð°Ñ Ð¿Ð¾Ð´Ð´ÐµÑжка ÑовмеÑÑного иÑполÑзованиÑ, полное Ñазделение маÑинно-завиÑимой и маÑинно-незавиÑимой ÑаÑÑей, а Ñакже (ÑейÑÐ°Ñ Ð½Ðµ иÑполÑзÑемаÑ) поддеÑжка ÑабоÑÑ Ñ Ð½ÐµÑколÑкими пÑоÑеÑÑоÑами. ÐÑоÑеÑÑÑ Ð¼Ð¾Ð³ÑÑ Ð¾ÑобÑажаÑÑ ÑÐ°Ð¹Ð»Ñ Ð² лÑбÑÑ Ð¾Ð±Ð»Ð°ÑÑÑ Ñвоего адÑеÑного пÑоÑÑÑанÑÑва. Ðни могÑÑ ÑовмеÑÑно иÑполÑзоваÑÑ ÑаÑÑи ÑÐ²Ð¾Ð¸Ñ Ð°Ð´ÑеÑнÑÑ Ð¿ÑоÑÑÑанÑÑв поÑÑедÑÑвом оÑобÑÐ°Ð¶ÐµÐ½Ð¸Ñ Ð² памÑÑÑ Ð¾Ð´Ð½Ð¾Ð³Ð¾ и Ñого же Ñайла. ÐзменениÑ, ÑделаннÑе одним пÑоÑеÑÑом, Ð²Ð¸Ð´Ð½Ñ Ð² адÑеÑном пÑоÑÑÑанÑÑве дÑÑгого пÑоÑеÑÑа, а Ñакже запиÑÑваÑÑ ÑÑ Ð¸ в Ñам Ñайл. ÐÑоÑеÑÑÑ Ð¼Ð¾Ð³ÑÑ Ñакже запÑаÑиваÑÑ ÑкÑклÑзивное оÑобÑажение Ñайла в памÑÑÑ, пÑи коÑоÑом лÑбÑÐ µ изменениÑ, ÑделаннÑе пÑ! оÑеÑÑом, не Ð²Ð¸Ð´Ð½Ñ Ð´ÑÑгим пÑоÑеÑÑам, коÑоÑÑе оÑобÑажаÑÑ Ñайл в памÑÑÑ Ð¸ не запиÑÑваÑÑÑÑ Ð¾Ð±ÑаÑно в Ñайл. +ÐопÑÑки поÑÑепенно ÑÑовеÑÑенÑÑвоваÑÑ ÑÑаÑÑÑ ÑеализаÑÐ¸Ñ Ð·Ð°Ð²ÐµÐ´Ð¾Ð¼Ð¾ бÑли обÑеÑÐµÐ½Ñ Ð½Ð° неÑдаÑÑ. ÐолноÑÑÑÑ Ð½Ð¾Ð²Ð°Ñ Ð°ÑÑ Ð¸ÑекÑÑÑа, Ñ Ð´ÑÑгой ÑÑоÑонÑ, могла Ð±Ñ Ð¸ÑполÑзоваÑÑ Ð±Ð¾Ð»ÑÑие обÑÐµÐ¼Ñ Ð¿Ð°Ð¼ÑÑи, ÑменÑÑиÑÑ Ð´Ð¸ÑковÑе опеÑаÑии и обеÑпеÑиваÑÑ ÑабоÑÑ Ñ Ð½ÐµÑколÑкими пÑоÑеÑÑоÑами. ÐаконеÑ, ÑиÑÑема виÑÑÑалÑной памÑÑи в 4.4BSD бÑла полноÑÑÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð°. СиÑÑема виÑÑÑалÑной памÑÑи 4.4BSD оÑнована на ÑиÑÑеме виÑÑÑалÑнй памÑÑи (VM) crossref:design-44bsd[biblio-tevanian, [Tevanian, 1987]] Ñ Ð·Ð°Ð¸Ð¼ÑÑвованиÑми из Mach 2.5 и Mach 3.0. Рней бÑла ÑÑÑекÑÐ¸Ð²Ð½Ð°Ñ Ð¿Ð¾Ð´Ð´ÐµÑжка ÑовмеÑÑного иÑполÑзованиÑ, полное ÑазделРµÐ½Ð¸Ðµ маÑинно-завиÑимой и маÑинно-незавиÑимой ÑаÑÑей, а Ñакже (ÑейÑÐ°Ñ Ð½Ðµ иÑполÑзÑемаÑ) поддеÑжка ÑабоÑÑ Ñ Ð½ÐµÑколÑкими пÑоÑеÑÑоÑами. ÐÑоÑеÑÑÑ Ð¼Ð¾Ð³ÑÑ Ð¾ÑобÑажаÑÑ ÑÐ°Ð¹Ð»Ñ Ð² лÑбÑÑ Ð¾Ð±Ð»Ð°ÑÑÑ Ñвоего адÑеÑного пÑоÑÑÑанÑÑва. Ðни могÑÑ ÑовмеÑÑно иÑполÑзоваÑÑ ÑаÑÑи ÑÐ²Ð¾Ð¸Ñ Ð°Ð´ÑеÑнÑÑ Ð¿ÑоÑÑÑанÑÑв поÑÑедÑÑвом оÑобÑÐ°Ð¶ÐµÐ½Ð¸Ñ Ð² памÑÑÑ Ð¾Ð´Ð½Ð¾Ð³Ð¾ и Ñого же Ñайла. ÐзменениÑ, ÑделаннÑе одним пÑоÑеÑÑом, Ð²Ð¸Ð´Ð½Ñ Ð² адÑеÑном пÑоÑÑÑанÑÑве дÑÑгого пÑоÑеÑÑа, а Ñакже запиÑÑ Ð²Ð°ÑÑÑÑ Ð¸ в Ñам Ñайл. ÐÑоÑеÑÑÑ Ð¼Ð¾Ð³ÑÑ Ñакже запÑаÑиваÑÑ ÑкÑклÑзивное оÑобÑажение Ñайла в памÑÑÑ, пÑи коÑоÑом Ð »ÑбÑе изменениÑ, Ñделанн! Ñе пÑоÑеÑÑом, не Ð²Ð¸Ð´Ð½Ñ Ð´ÑÑгим пÑоÑеÑÑам, коÑоÑÑе оÑобÑажаÑÑ Ñайл в памÑÑÑ Ð¸ не запиÑÑваÑÑÑÑ Ð¾Ð±ÑаÑно в Ñайл. ÐÑе одной пÑоблемой Ñ ÑиÑÑемой виÑÑÑалÑной памÑÑи ÑвлÑеÑÑÑ ÑпоÑоб, коÑоÑÑм инÑоÑмаÑÐ¸Ñ Ð¿ÐµÑедаеÑÑÑ ÑдÑÑ Ð¿Ñи вÑполнении ÑиÑÑемного вÑзова. 4.4BSD вÑегда копиÑÑÐµÑ Ð´Ð°Ð½Ð½Ñе из адÑеÑного пÑоÑÑÑанÑÑва пÑоÑеÑÑа в бÑÑÐµÑ ÑдÑа. ÐÐ»Ñ Ð¾Ð¿ÐµÑаÑий ÑÑÐµÐ½Ð¸Ñ Ð¸ запиÑи, пÑи коÑоÑÑÑ Ð¿ÐµÑедаÑÑÑÑ Ð±Ð¾Ð»ÑÑие обÑÐµÐ¼Ñ Ð´Ð°Ð½Ð½ÑÑ , вÑполнение копиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¼Ð¾Ð¶ÐµÑ Ð¾ÐºÐ°Ð·Ð°ÑÑÑÑ Ð·Ð°Ð½Ð¸Ð¼Ð°ÑÑим вÑÐµÐ¼Ñ Ð¿ÑоÑеÑÑом. ÐлÑÑеÑнаÑивнÑм ÑпоÑобом ÑвлÑеÑÑÑ Ð¼Ð°Ð½Ð¸Ð¿ÑлÑÑии Ñ Ð°Ð´ÑеÑнÑм пÑоÑÑÑанÑÑвом пÑÐ¾Ñ ÐµÑÑа в ÑдÑе. ЯдÑо 4.4BSD вÑегда копиÑÑÐµÑ Ð´Ð°Ð½Ð½Ñе о неÑколÑким пÑиÑинам: @@ -326,14 +243,14 @@ image::fig1.png[СиÑÑемнÑе вÑÐ·Ð¾Ð²Ñ ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿ÑоÑе ЯдÑо ÑаÑÑо вÑполнÑÐµÑ Ð²Ñделение памÑÑи, коÑоÑое нÑжно ÑолÑко Ð´Ð»Ñ Ð²ÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ ÐµÐ´Ð¸Ð½ÑÑвенного ÑиÑÑемного вÑзова. РполÑзоваÑелÑÑком пÑоÑеÑÑе ÑÐ°ÐºÐ°Ñ ÐºÑаÑковÑеменно иÑполÑзÑÐµÐ¼Ð°Ñ Ð¿Ð°Ð¼ÑÑÑ Ð±ÑÐ´ÐµÑ Ð²ÑделÑÑÑÑÑ Ð² ÑÑеке во вÑÐµÐ¼Ñ Ð²ÑполнениÑ. Так как ÑдÑо Ð¸Ð¼ÐµÐµÑ Ð¾Ð³ÑаниÑеннÑй обÑем ÑÑека вÑемени вÑполнениÑ, Ñо неÑÑÑекÑивно вÑделÑÑÑ Ð² нем даже блоки памÑÑи ÑÑеднего ÑазмеÑа. Таким обÑазом, ÑÐ°ÐºÐ°Ñ Ð¿Ð°Ð¼ÑÑÑ Ð´Ð¾Ð»Ð¶Ð½Ð° вÑделÑÑÑÑÑ Ð¿Ð¾ÑÑедÑÑвом более гибкого Ð¼ÐµÑ Ð° низма. ÐапÑимеÑ, когда ÑиÑÑемнÑй вÑзов должен пÑеобÑазоваÑÑ Ð¸Ð¼Ñ ÐºÐ°Ñалога, он должен вÑделиÑÑ Ð±ÑÑÐµÑ ÑазмеÑом 1 ÐÐ±Ð°Ð¹Ñ Ð´Ð»Ñ Ñ ÑÐ°Ð½ÐµÐ½Ð¸Ñ Ð¸Ð¼ÐµÐ½Ð¸. ÐÑÑгие блоки памÑÑи Ð´Ð¾Ð»Ð¶Ð½Ñ Ð²ÑделÑÑÑÑÑ Ð½Ð° более пÑодолжиÑелÑнÑй ÑÑок, Ñем один ÑиÑÑемнÑй вÑзов, и поÑÑÐ¾Ð¼Ñ Ð½Ðµ могÑÑ Ð²ÑделÑÑÑÑÑ Ð² ÑÑеке, даже еÑли Ñам еÑÑÑ Ð¼ÐµÑÑо. РкаÑеÑÑве пÑимеÑа можно взÑÑÑ Ð±Ð»Ð¾ÐºÐ¸ ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿ÑоÑоколами, коÑоÑÑе ÑÑÑеÑÑвÑÑÑ Ð½Ð° вÑем пÑоÑÑжении ÑеÑевого ÑоединениÑ. -ÐÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ÑÑÑ Ð² динамиÑеÑком вÑделении памÑÑи в ÑдÑе ÑÑановилаÑÑ Ð²Ñе более оÑÑÑой вмеÑÑе Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸ÐµÐ¼ колиÑеÑÑва ÑеÑвиÑов. ÐбÑий Ð¼ÐµÑ Ð°Ð½Ð¸Ð·Ð¼ вÑÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ð¿Ð°Ð¼ÑÑи ÑменÑÑÐ°ÐµÑ ÑложноÑÑÑ Ð½Ð°Ð¿Ð¸ÑÐ°Ð½Ð¸Ñ ÐºÐ¾Ð´Ð° в ÑдÑе. ÐоÑÑÐ¾Ð¼Ñ Ð² 4.4BSD ÑдÑо Ð¸Ð¼ÐµÐµÑ ÐµÐ´Ð¸Ð½Ñй Ð¼ÐµÑ Ð°Ð½Ð¸Ð·Ð¼ вÑÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ð¿Ð°Ð¼ÑÑи, коÑоÑÑй Ð¼Ð¾Ð¶ÐµÑ Ð¸ÑполÑзоваÑÑÑÑ Ð² лÑбой ÑаÑÑи ÑиÑÑемÑ. У него еÑÑÑ Ð¸Ð½ÑеÑÑейÑ, Ð¿Ð¾Ñ Ð¾Ð¶Ð¸Ð¹ на ÑÑнкÑии библиоÑеки ÑзÑка C _malloc_ и _free_, коÑоÑÑе обеÑпеÑиваÑÑ Ð²Ñделение памÑÑи в пÑикладнÑÑ Ð¿ÑогÑÐ°Ð¼Ð¼Ð°Ñ <<biblio-mckusick-2, [McKusick & Karels, 1988]>>. Ðак инÑеÑÑÐµÐ¹Ñ Ð±Ð¸Ð±Ð»Ð¸Ð¾Ñеки ÑзÑка C, ÑÑнкÑÐ¸Ñ Ð²ÑÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ð¿Ð°Ð¼ÑÑи полÑÑÐ°ÐµÑ Ð ¿Ð°ÑамеÑÑ, ÑказÑваÑÑий на ÑÐ°Ð·Ð¼ÐµÑ Ð¿Ð°Ð¼ÑÑи, коÑоÑÑй Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼. Ðиапазон запÑаÑиваемÑÑ Ð¾Ð±Ñемов вÑделÑемой памÑÑи не огÑаниÑен; однако вÑделÑÐµÐ¼Ð°Ñ ÑизиÑеÑÐºÐ°Ñ Ð¿Ð°Ð¼ÑÑÑ Ð½Ðµ подвеÑгаеÑÑÑ Ð¿Ð¾ÑÑÑаниÑной подгÑÑзке. ФÑнкÑии оÑÐ²Ð¾Ð±Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ Ð¿Ð°Ð¼ÑÑи пеÑедаеÑÑÑ ÑказаÑÐµÐ»Ñ Ð½Ð° оÑвобождаемÑй ÑÑаÑÑок памÑÑи, но ÑказÑваÑÑ ÑÐ°Ð·Ð¼ÐµÑ Ð¾Ñвобождаемого ÑÑаÑÑка памÑÑи не нÑжно. +ÐÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ÑÑÑ Ð² динамиÑеÑком вÑделении памÑÑи в ÑдÑе ÑÑановилаÑÑ Ð²Ñе более оÑÑÑой вмеÑÑе Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸ÐµÐ¼ колиÑеÑÑва ÑеÑвиÑов. ÐбÑий Ð¼ÐµÑ Ð°Ð½Ð¸Ð·Ð¼ вÑÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ð¿Ð°Ð¼ÑÑи ÑменÑÑÐ°ÐµÑ ÑложноÑÑÑ Ð½Ð°Ð¿Ð¸ÑÐ°Ð½Ð¸Ñ ÐºÐ¾Ð´Ð° в ÑдÑе. ÐоÑÑÐ¾Ð¼Ñ Ð² 4.4BSD ÑдÑо Ð¸Ð¼ÐµÐµÑ ÐµÐ´Ð¸Ð½Ñй Ð¼ÐµÑ Ð°Ð½Ð¸Ð·Ð¼ вÑÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ð¿Ð°Ð¼ÑÑи, коÑоÑÑй Ð¼Ð¾Ð¶ÐµÑ Ð¸ÑполÑзоваÑÑÑÑ Ð² лÑбой ÑаÑÑи ÑиÑÑемÑ. У него еÑÑÑ Ð¸Ð½ÑеÑÑейÑ, Ð¿Ð¾Ñ Ð¾Ð¶Ð¸Ð¹ на ÑÑнкÑии библиоÑеки ÑзÑка C _malloc_ и _free_, коÑоÑÑе обеÑпеÑиваÑÑ Ð²Ñделение памÑÑи в пÑикладнÑÑ Ð¿ÑогÑÐ°Ð¼Ð¼Ð°Ñ crossref:design-44bsd[biblio-mckusick-2, [McKusick & Karels, 1988]]. Ðак инÑеÑÑÐµÐ¹Ñ Ð±Ð¸Ð±Ð»Ð¸Ð¾Ñеки ÑзÑка C, ÑÑнкÑÐ¸Ñ Ð²ÑÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ð¿Ð°Ð¼ÑÑи полÑÑÐ°ÐµÑ Ð¿Ð°ÑамеÑÑ, ÑказÑваÑÑий на ÑÐ°Ð·Ð¼ÐµÑ Ð¿Ð°Ð¼ÑÑи, коÑоÑÑй Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼. Ðиапазон запÑаÑиваемÑÑ Ð¾Ð±Ñемов вÑделÑемой памÑÑи не огÑаниÑен; однако вÑделÑÐµÐ¼Ð°Ñ ÑизиÑеÑÐºÐ°Ñ Ð¿Ð°Ð¼ÑÑÑ Ð½Ðµ подвеÑгаеÑÑÑ Ð¿Ð¾ÑÑÑаниÑной подгÑÑзке. ФÑнкÑии оÑÐ²Ð¾Ð±Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ Ð¿Ð°Ð¼ÑÑи пеÑедаеÑÑÑ ÑказаÑÐµÐ»Ñ Ð½Ð° оÑвобождаемÑй ÑÑаÑÑок памÑÑи, но ÑказÑваÑÑ ÑÐ°Ð·Ð¼ÐµÑ Ð¾Ñвобождаемого ÑÑаÑÑка памÑÑи не нÑжно. [[overview-io-system]] === СиÑÑема ввода/вÑвода Ðазовой моделÑÑ ÑиÑÑÐµÐ¼Ñ Ð²Ð²Ð¾Ð´Ð°/вÑвода UNIX ÑвлÑеÑÑÑ Ð¿Ð¾ÑледоваÑелÑноÑÑÑ Ð±Ð°Ð¹Ñ, доÑÑÑп к коÑоÑÑм Ð¼Ð¾Ð¶ÐµÑ Ð¾ÑÑÑеÑÑвлÑÑÑÑÑ ÐºÐ°Ðº поÑледоваÑелÑно, Ñак и в в пÑоизволÑном поÑÑдке. Ð ÑипиÑном полÑзоваÑелÑÑком пÑоÑеÑÑе UNIX Ð½ÐµÑ ÑÐ°ÐºÐ¸Ñ Ð¿Ð¾Ð½ÑÑий, как _меÑÐ¾Ð´Ñ Ð´Ð¾ÑÑÑпа_ или _ÑпÑавлÑÑÑие блоки_. -РазлиÑнÑе пÑогÑÐ°Ð¼Ð¼Ñ Ð¸ÑполÑзÑÑÑ ÑазнообÑазнÑе ÑÑÑÑкÑÑÑÑ Ð´Ð°Ð½Ð½ÑÑ , но ÑдÑо не ÑвÑзÑÐ²Ð°ÐµÑ Ð²Ð²Ð¾Ð´/вÑвод Ñ Ð¸ÑполÑзÑемÑми ÑÑÑÑкÑÑÑами. ÐапÑимеÑ, ÑекÑÑовÑм Ñайлом ÑÑиÑаеÑÑÑ Ñайл из ÑÑÑок Ñимволов набоÑа ASCII, коÑоÑÑе ÑÐ°Ð·Ð´ÐµÐ»ÐµÐ½Ñ Ð¾Ð´Ð½Ð¸Ð¼ Ñимволом новой ÑÑÑоки (Ñимвол ASCII пеÑевода ÑÑÑоки), но ÑдÑо не Ð·Ð½Ð°ÐµÑ Ð½Ð¸Ñего об ÑÑом ÑоглаÑении. ÐÐ»Ñ ÑдовлеÑвоÑÐµÐ½Ð¸Ñ Ð¿Ð¾ÑÑебноÑÑей болÑÑинÑÑва пÑогÑамм Ð¼Ð¾Ð´ÐµÐ»Ñ ÐµÑе более ÑпÑоÑена и ÑводиÑÑÑ Ðº поÑÐ¾ÐºÑ Ð±Ð°Ð¹Ñ Ð´Ð°Ð½Ð½ÑÑ , или _по ÑÐ¾ÐºÑ Ð²Ð²Ð¾Ð´Ð°/вÑвода_. Такое единое пÑедÑÑавление даннÑÑ Ð¿Ð¾Ð·Ð²Ð¾Ð»ÑÐµÑ ÑабоÑаÑÑ Ñ Ð°ÑакÑеÑÐ½Ð¾Ð¼Ñ Ð´Ð»Ñ UNIX Ð¿Ð¾Ð´Ñ Ð¾Ð´Ñ Ð½Ð° оÑн ове инÑÑÑÑменÑов <<biblio-kernighan, [Kernighan & Pike, 1984]>>. ÐоÑок ввода/вÑвода одной пÑогÑÐ°Ð¼Ð¼Ñ Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¿Ð¾Ð´Ð°Ð½ в каÑеÑÑве Ð²Ñ Ð¾Ð´Ð½Ð¾Ð¹ инÑоÑмаÑии пÑакÑиÑеÑки лÑбой дÑÑгой пÑогÑамме. (ÐÑÐ¾Ñ Ñип ÑÑадиÑионнÑÑ Ð´Ð»Ñ UNIX поÑоков ввода/вÑÐ²Ð¾Ð´Ñ Ð½Ðµ нÑжно пÑÑаÑÑ Ñ Ð¿Ð¾Ñоковой ÑиÑÑемой ввода/вÑвода из Eighth Edition или Ñ Ð¿Ð¾Ñоками из System V, Release 3 (STREAMS), оба из коÑоÑÑÑ Ð´Ð¾ÑÑÑÐ¿Ð½Ñ ÐºÐ°Ðº обÑÑнÑе поÑоки ввода/вÑвода.) +РазлиÑнÑе пÑогÑÐ°Ð¼Ð¼Ñ Ð¸ÑполÑзÑÑÑ ÑазнообÑазнÑе ÑÑÑÑкÑÑÑÑ Ð´Ð°Ð½Ð½ÑÑ , но ÑдÑо не ÑвÑзÑÐ²Ð°ÐµÑ Ð²Ð²Ð¾Ð´/вÑвод Ñ Ð¸ÑполÑзÑемÑми ÑÑÑÑкÑÑÑами. ÐапÑимеÑ, ÑекÑÑовÑм Ñайлом ÑÑиÑаеÑÑÑ Ñайл из ÑÑÑок Ñимволов набоÑа ASCII, коÑоÑÑе ÑÐ°Ð·Ð´ÐµÐ»ÐµÐ½Ñ Ð¾Ð´Ð½Ð¸Ð¼ Ñимволом новой ÑÑÑоки (Ñимвол ASCII пеÑевода ÑÑÑоки), но ÑдÑо не Ð·Ð½Ð°ÐµÑ Ð½Ð¸Ñего об ÑÑом ÑоглаÑении. ÐÐ»Ñ ÑдовлеÑвоÑÐµÐ½Ð¸Ñ Ð¿Ð¾ÑÑебноÑÑей болÑÑинÑÑва пÑогÑамм Ð¼Ð¾Ð´ÐµÐ»Ñ ÐµÑе более ÑпÑоÑена и ÑводиÑÑÑ Ðº поÑÐ¾ÐºÑ Ð±Ð°Ð¹Ñ Ð´Ð°Ð½Ð½ÑÑ , или _по ÑÐ¾ÐºÑ Ð²Ð²Ð¾Ð´Ð°/вÑвода_. Такое единое пÑедÑÑавление даннÑÑ Ð¿Ð¾Ð·Ð²Ð¾Ð»ÑÐµÑ ÑабоÑаÑÑ Ñ Ð°ÑакÑеÑÐ½Ð¾Ð¼Ñ Ð´Ð»Ñ UNIX Ð¿Ð¾Ð´Ñ Ð¾Ð´Ñ Ð½Ð° оÑн ове инÑÑÑÑменÑов crossref:design-44bsd[biblio-kernighan, [Kernighan & Pike, 1984]]. ÐоÑок ввода/вÑвода одной пÑогÑÐ°Ð¼Ð¼Ñ Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¿Ð¾Ð´Ð°Ð½ в каÑеÑÑве Ð²Ñ Ð¾Ð´Ð½Ð¾Ð¹ инÑоÑмаÑии пÑакÑиÑеÑки лÑбой дÑÑгой пÑогÑамме. (ÐÑÐ¾Ñ Ñип ÑÑадиÑионнÑÑ Ð´Ð»Ñ UNIX поÑоков ввода/вÑÐ²Ð¾Ð´Ñ Ð½Ðµ нÑжно пÑÑаÑÑ Ñ Ð¿Ð¾Ñоковой ÑиÑÑемой ввода/вÑвода из Eighth Edition или Ñ Ð¿Ð¾Ñоками из System V, Release 3 (STREAMS), оба из коÑоÑÑÑ Ð´Ð¾ÑÑÑÐ¿Ð½Ñ ÐºÐ°Ðº обÑÑнÑе поÑоки ввода/вÑвода.) ==== ÐеÑкÑипÑоÑÑ Ð¸ ввод/вÑвод @@ -367,7 +284,7 @@ image::fig1.png[СиÑÑемнÑе вÑÐ·Ð¾Ð²Ñ ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿ÑоÑе ÐппаÑаÑнÑе ÑÑÑÑойÑÑва имеÑÑ ÑвÑзаннÑе Ñ Ð½Ð¸Ð¼Ð¸ имена Ñайлов, и к ним Ð¼Ð¾Ð¶ÐµÑ Ð¾Ð±ÑаÑаÑÑÑÑ Ð¿Ð¾Ð»ÑзоваÑÐµÐ»Ñ Ð¿Ñи помоÑи ÑÐµÑ Ð¶Ðµ ÑамÑÑ ÑиÑÑемнÑÑ Ð²Ñзовов, ÑÑо иÑполÑзÑÑÑÑÑ Ð´Ð»Ñ Ð¾Ð±ÑÑнÑÑ Ñайлов. ЯдÑо Ð¼Ð¾Ð¶ÐµÑ ÑазлиÑаÑÑ _ÑпеÑиалÑнÑй Ñайл ÑÑÑÑойÑÑва_ или пÑоÑÑо _ÑпеÑиалÑнÑй Ñайл_, и Ð¼Ð¾Ð¶ÐµÑ Ð¾Ð¿ÑеделÑÑÑ, к ÐºÐ°ÐºÐ¾Ð¼Ñ ÑÑÑÑойÑÑÐ²Ñ Ð¾Ð½ оÑноÑиÑÑÑ, но болÑÑинÑÑво пÑоÑеÑÑов не вÑполнÑÑÑ Ñакого ÑаÑпознаваниÑ. ТеÑминалÑ, пÑинÑеÑÑ Ð¸ ÑÑÑимеÑÑ Ð²Ñе доÑÑÑÐ¿Ð½Ñ ÐºÐ°Ðº поÑледоваÑелÑÐ ½Ð¾ÑÑи байÑ, как диÑковÑе ÑÐ°Ð¹Ð»Ñ 4.4BSD. Таким обÑазом, оÑобенноÑÑи ÑабоÑÑ ÑÑÑÑойÑÑв макÑималÑно ÑкÑÑваÑÑÑÑ ÑдÑоР¼, и даже в ÑдÑе болÑÑинÑÑво из Ð½Ð¸Ñ Ð¾ÑлиÑаÑÑÑÑ Ð² дÑайвеÑÐ°Ñ . -ÐппаÑаÑнÑе ÑÑÑÑойÑÑва могÑÑ Ð±ÑÑÑ ÑÐ°Ð·Ð´ÐµÐ»ÐµÐ½Ñ Ð½Ð° _ÑÑÑÑкÑÑÑиÑованнÑе_ или _неÑÑÑÑкÑÑÑиÑованнÑе_; они извеÑÑÐ½Ñ Ð¿Ð¾Ð´ названиÑми _блоÑнÑе_ и _поÑимволÑнÑе_, ÑооÑвеÑÑÑвенно. Ðак пÑавило, пÑоÑеÑÑÑ Ð¾Ð±ÑаÑаÑÑÑÑ Ðº ÑÑÑÑойÑÑвам поÑÑедÑÑвом _ÑпеÑиалÑнÑÑ Ñайлов_ в Ñайловой ÑиÑÑеме. ÐпеÑаÑии ввода/вÑвода, вÑполнÑемÑе Ñ Ñакими Ñайлами, обÑабаÑÑваÑÑÑÑ Ð¿Ð¾ÑÑоÑнно Ð½Ð°Ñ Ð¾Ð´ÑÑимиÑÑ Ð² ÑдÑе пÑогÑаммнÑми модÑлÑми, назÑваемÑми _дÑайвеÑами ÑÑÑÑойÑÑв_. ÐолÑÑинÑÑво аппаÑаÑнÑÑ ÑÑÑÑойÑÑв Ð´Ð»Ñ ÑеÑевÑÑ ÐºÐ¾Ð¼Ð¼ÑникаÑий доÑÑÑÐ¿Ð½Ñ ÑолÑко пÑи помоÑи Ð¼ÐµÑ Ð°Ð½Ð¸Ð·Ð¼Ð¾Ð² межпÑоÑеÑÑного взаим одейÑÑвиÑ, и не имеÑÑ ÑпеÑиалÑнÑÑ ÑÑÑÑойÑÑв в пÑоÑÑÑанÑÑве имен Ñайловой ÑиÑÑемÑ, Ñак как инÑеÑÑÐµÐ¹Ñ _низкоÑÑовневÑÑ ÑокеÑов_ Ð´Ð°ÐµÑ Ð±Ð¾Ð»ÐµÐµ еÑÑеÑÑвеннÑй инÑеÑÑейÑ, Ñем ÑпеÑиалÑнÑй Ñайл. +ÐппаÑаÑнÑе ÑÑÑÑойÑÑва могÑÑ Ð±ÑÑÑ ÑÐ°Ð·Ð´ÐµÐ»ÐµÐ½Ñ Ð½Ð° _ÑÑÑÑкÑÑÑиÑованнÑе_ или _неÑÑÑÑкÑÑÑиÑованнÑе_; они извеÑÑÐ½Ñ Ð¿Ð¾Ð´ названиÑми _блоÑнÑе_ и _поÑимволÑнÑе_, ÑооÑвеÑÑÑвенно. Ðак пÑавило, пÑоÑеÑÑÑ Ð¾Ð±ÑаÑаÑÑÑÑ Ðº ÑÑÑÑойÑÑвам поÑÑедÑÑвом _ÑпеÑиалÑнÑÑ Ñайлов_ в Ñайловой ÑиÑÑеме. ÐпеÑаÑии ввода/вÑвода, вÑполнÑемÑе Ñ Ñакими Ñайлами, обÑабаÑÑваÑÑÑÑ Ð¿Ð¾ÑÑоÑнно Ð½Ð°Ñ Ð¾Ð´ÑÑимиÑÑ Ð² ÑдÑе пÑогÑаммнÑми модÑлÑми, назÑваемÑми _дÑайвеÑами ÑÑÑÑойÑÑв_. ÐолÑÑинÑÑво аппаÑаÑнÑÑ ÑÑÑÑойÑÑв Ð´Ð»Ñ ÑеÑевÑÑ ÐºÐ¾Ð¼Ð¼ÑникаÑий доÑÑÑÐ¿Ð½Ñ ÑолÑко пÑи помоÑи подÑиÑÑÐµÐ¼Ñ Ð¼ÐµÐ¶Ð¿ÑоÑеÑÑного взаим одейÑÑвиÑ, и не имеÑÑ ÑпеÑиалÑнÑÑ ÑÑÑÑойÑÑв в пÑоÑÑÑанÑÑве имен Ñайловой ÑиÑÑемÑ, Ñак как инÑеÑÑÐµÐ¹Ñ _низкоÑÑовневÑÑ ÑокеÑов_ Ð´Ð°ÐµÑ Ð±Ð¾Ð»ÐµÐµ еÑÑеÑÑвеннÑй инÑеÑÑейÑ, Ñем ÑпеÑиалÑнÑй Ñайл. СÑÑÑкÑÑÑиÑованнÑе или блоÑнÑе ÑÑÑÑойÑÑва ÑазделÑÑÑÑÑ Ð½Ð° диÑки и магниÑнÑе ленÑÑ Ð¸ вклÑÑаÑÑ Ð² ÑÐµÐ±Ñ Ð±Ð¾Ð»ÑÑинÑÑво ÑÑÑÑойÑÑв Ñ Ð¿ÑоизволÑнÑм доÑÑÑпом. ЯдÑо поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ Ð¾Ð¿ÐµÑаÑии бÑÑеÑизаÑии Ñипа ÑÑение-изменение-запиÑÑ Ñ Ð±Ð»Ð¾ÑнÑми ÑÑÑÑкÑÑÑиÑованнÑми ÑÑÑÑойÑÑвами Ð´Ð»Ñ Ñого, ÑÑÐ¾Ð±Ñ ÑазÑеÑиÑÑ Ð¿Ð¾Ñледним оÑÑÑеÑÑвлÑÑÑ ÑÑение и запиÑÑ Ð¿Ð¾Ð»Ð½Ð¾ÑÑÑÑ Ð¿ÑоизволÑнÑм обÑазом, как Ñ Ð¾Ð±ÑÑнÑми Ñайлами. ФайловÑе ÑиÑÑÐµÐ¼Ñ ÑоздаÑÑÑÑ Ð½Ð° блоÑнÑÑ ÑÑÑÑойÑÑÐ²Ð°Ñ . @@ -411,17 +328,17 @@ System V пÑедоÑÑавлÑÐµÑ Ð¼ÐµÑ Ð°Ð½Ð¸Ð·Ð¼ локалÑного меж ÐÐ¾Ð¼Ð¿Ð¾Ð½ÐµÐ½Ñ Ð¿Ð¾Ð´ названием _Ð¸Ð¼Ñ Ñайла_ ÑвлÑеÑÑÑ ÑÑÑокой длиной до 255 Ñимволов. ÐÑи имена Ñ ÑанÑÑÑÑ Ð² Ñайле оÑобого Ñипа, коÑоÑÑй назÑваеÑÑÑ _каÑалогом_. ÐнÑоÑмаÑÐ¸Ñ Ð¾ Ñайле в каÑалоге назÑваеÑÑÑ _запиÑÑÑ ÐºÐ°Ñалога_ и вклÑÑаеÑ, кÑоме имени Ñайла, ÑказаÑÐµÐ»Ñ Ð½Ð° Ñам Ñайл. ÐапиÑи каÑалога могÑÑ ÑÑÑлаÑÑÑÑ ÐºÐ°Ðº на дÑÑгие каÑалоги, Ñак и на обÑÑнÑе ÑайлÑ. Таким обÑазом ÑоÑмиÑÑеÑÑÑ Ð¸ÐµÑаÑÑ Ð¸Ñ ÐºÐ°Ñалогов и Ñайлов, коÑоÑÐ°Ñ Ð¸ назÑваеÑÑÑ Ñайловой ÑиÑÑемой _fil esystem_; -[[fig-small-fs]] .ÐеболÑÑÐ°Ñ ÑÐ°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема -image::fig2.png[ÐеÑево неболÑÑой Ñайловой ÑиÑÑемÑ] +[[fig-small-fs]] +image:fig2.png[ÐеÑево неболÑÑой Ñайловой ÑиÑÑемÑ] -Ðдна неболÑÑÐ°Ñ ÑÐ°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема показана на <<fig-small-fs>>. ÐаÑалоги могÑÑ ÑодеÑжаÑÑ Ð¿Ð¾Ð´ÐºÐ°Ñалоги, и Ð½ÐµÑ Ð¾Ð³ÑаниÑений вложенноÑÑи одного каÑалога в дÑÑгой по глÑбине. ÐÐ»Ñ ÑоблÑÐ´ÐµÐ½Ð¸Ñ ÑелоÑÑноÑÑи Ñайловой ÑиÑÑемÑ, ÑдÑо не позволÑÐµÑ Ð¿ÑоÑеÑÑÑ Ð¿ÑоизводиÑÑ Ð·Ð°Ð¿Ð¸ÑÑ Ð½ÐµÐ¿Ð¾ÑÑедÑÑвенно в каÑалоги. Ð¤Ð°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема Ð¼Ð¾Ð¶ÐµÑ Ñ ÑаниÑÑ Ð½Ðµ ÑолÑко обÑÑнÑе ÑÐ°Ð¹Ð»Ñ Ð¸ каÑалоги, но Ñакже ÑÑÑлки на дÑÑгие обÑекÑÑ, Ñакие, как ÑÑÑÑойÑÑва и ÑокеÑÑ. +Ðдна неболÑÑÐ°Ñ ÑÐ°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема показана на crossref:design-44bsd[fig-small-fs, A small filesystem]. ÐаÑалоги могÑÑ ÑодеÑжаÑÑ Ð¿Ð¾Ð´ÐºÐ°Ñалоги, и Ð½ÐµÑ Ð¾Ð³ÑаниÑений вложенноÑÑи одного каÑалога в дÑÑгой по глÑбине. ÐÐ»Ñ ÑоблÑÐ´ÐµÐ½Ð¸Ñ ÑелоÑÑноÑÑи Ñайловой ÑиÑÑемÑ, ÑдÑо не позволÑÐµÑ Ð¿ÑоÑеÑÑÑ Ð¿ÑоизводиÑÑ Ð·Ð°Ð¿Ð¸ÑÑ Ð½ÐµÐ¿Ð¾ÑÑедÑÑвенно в каÑалоги. Ð¤Ð°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема Ð¼Ð¾Ð¶ÐµÑ Ñ ÑаниÑÑ Ð½Ðµ ÑолÑко обÑÑнÑе ÑÐ°Ð¹Ð»Ñ Ð¸ каÑалоги, но Ñакже ÑÑÑлки на дÑÑгие обÑекÑÑ, Ñакие, как ÑÑÑÑойÑÑва и ÑокеÑÑ. Ð¤Ð°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема обÑазÑÐµÑ Ð´ÐµÑево, наÑало коÑоÑого Ð½Ð°Ñ Ð¾Ð´Ð¸ÑÑÑ Ð² _коÑневом каÑалоге_, иногда назÑÐ²Ð°ÐµÐ¼Ð¾Ð¼Ñ Ð¿Ð¾ имени _ÑлÑÑ_, коÑоÑое ÑооÑвеÑÑÑвÑÐµÑ ÑÐ¸Ð¼Ð²Ð¾Ð»Ñ Ð¾Ð´Ð¸Ð½Ð°Ñной наклонной ÑеÑÑÑ (/). ÐоÑневой каÑалог ÑодеÑÐ¶Ð¸Ñ ÑайлÑ; в наÑем пÑимеÑе на РиÑÑнке 2.2, он ÑодеÑÐ¶Ð¸Ñ [.filename]#vmunix#, ÐºÐ¾Ð¿Ð¸Ñ Ð²Ñполнимого обÑекÑного Ñайла ÑдÑа. Рнем Ñакже ÑаÑÐ¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ñ ÐºÐ°Ñалоги; в ÑÑом пÑимеÑе он ÑодеÑÐ¶Ð¸Ñ ÐºÐ°Ñалог [.filename]#usr#. ÐнÑÑÑи каÑалога [.filename]#usr# ÑаÑполагаеÑÑÑ ÐºÐ°Ñалог [.fil ename]#bin#, коÑоÑÑй в оÑновном ÑодеÑÐ¶Ð¸Ñ Ð²ÑполнимÑй обÑекÑнÑй код пÑогÑамм, ÑÐ°ÐºÐ¸Ñ , как [.filename]#ls# и [.filename]#vi#. ÐÑоÑеÑÑ Ð¾Ð±ÑаÑаеÑÑÑ Ðº ÑайлÑ, ÑказÑÐ²Ð°Ñ _пÑÑÑ_ до него, коÑоÑÑй ÑвлÑеÑÑÑ ÑÑÑокой, ÑоÑÑоÑÑей из неÑколÑÐºÐ¸Ñ Ð¸Ð»Ð¸ ни одного имен Ñайлов, ÑазделеннÑÑ Ñимволами ÑлÑÑа (/). С каждÑм пÑоÑеÑÑом ÑдÑо ÑвÑзÑÐ²Ð°ÐµÑ Ð´Ð²Ð° каÑалога, пÑи помоÑи коÑоÑÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ инÑеÑпÑеÑиÑоваÑÑ Ð¼Ð°ÑÑÑÑÑÑ Ð´Ð¾ Ñайлов. _ÐоÑневой каÑалог_ пÑоÑеÑÑа ÑвлÑеÑÑÑ Ñамой веÑÑ Ð½ÐµÐ¹ ÑоÑкой Ñайловой ÑиÑÑемÑ, коÑоÑÑÑ Ð¼Ð¾Ð¶ÐµÑ Ð´Ð¾ÑÑиÑÑ Ð¿ÑоÑеÑÑ; обÑÑно он ÑооÑвеÑÑÑвÑÐµÑ ÐºÐ¾ÑÐ½ÐµÐ²Ð¾Ð¼Ñ ÐºÐ°ÑÐ°Ð»Ð¾Ð³Ñ Ð²Ñей Ñайловой ÑиÑÑемÑ. ÐаÑÑÑÑÑ, наÑинаÑÑийÑÑ Ñ Ñимвола ÑлÑÑа, назÑваеÑÑÑ _абÑолÑÑнÑм маÑÑÑÑÑом_, и инÑеÑпÑеÑиÑÑеÑÑÑ ÑдÑом , наÑÐ¸Ð½Ð°Ñ Ñ ÐºÐ¾Ñневого каÑалога пÑоÑеÑÑа. -ÐÐ¼Ñ Ð¿ÑÑи, коÑоÑое не наÑинаеÑÑÑ Ñо ÑлÑÑа, назÑваеÑÑÑ _оÑноÑиÑелÑнÑм маÑÑÑÑÑом_, и инÑеÑпÑеÑиÑÑеÑÑÑ Ð¾ÑноÑиÑелÑно _ÑекÑÑего ÑабоÑего каÑалога_ пÑоÑеÑÑа. (ÐÑÐ¾Ñ ÐºÐ°Ñалог кÑаÑко Ñакже назÑваÑÑ _ÑекÑÑим каÑалогом_ или _ÑабоÑим каÑалогом_.) ТекÑÑий каÑалог Ñам по Ñебе можно обознаÑиÑÑ Ð½ÐµÐ¿Ð¾ÑÑедÑÑвенно по имени _dot_, ÑÑо ÑооÑвеÑÑÑвÑÐµÑ Ð¾Ð´Ð½Ð¾Ð¹ ÑоÑке ([.filename]#.#). ÐÐ¼Ñ Ñайла _dot-dot_ ([.filename]#..#) обознаÑÐ°ÐµÑ ÑодиÑелÑÑкий каÑалог ÑекÑÑего каÑалога. ÐоÑневой ÐºÐ°Ñ Ð°Ð»Ð¾Ð³ ÑвлÑеÑÑÑ Ð¿Ñедком ÑÐ°Ð¼Ð¾Ð¼Ñ Ñебе. +ÐÐ¼Ñ Ð¿ÑÑи, коÑоÑое не наÑинаеÑÑÑ Ñо ÑлÑÑа, назÑваеÑÑÑ _оÑноÑиÑелÑнÑм маÑÑÑÑÑом_, и инÑеÑпÑеÑиÑÑеÑÑÑ Ð¾ÑноÑиÑелÑно _ÑекÑÑего ÑабоÑего каÑалога_ пÑоÑеÑÑа. (ÐÑÐ¾Ñ ÐºÐ°Ñалог кÑаÑко Ñакже назÑваÑÑ _ÑекÑÑим каÑалогом_ или _ÑабоÑим каÑалогом_.) ТекÑÑий каÑалог Ñам по Ñебе можно обознаÑиÑÑ Ð½ÐµÐ¿Ð¾ÑÑедÑÑвенно по имени _dot_, ÑÑо ÑооÑвеÑÑÑвÑÐµÑ Ð¾Ð´Ð½Ð¾Ð¹ ÑоÑке (`.`). ÐÐ¼Ñ Ñайла _dot-dot_ (`..`) обознаÑÐ°ÐµÑ ÑодиÑелÑÑкий каÑалог ÑекÑÑего каÑалога. ÐоÑневой каÑалог ÑвлÑÐµÑ ÑÑ Ð¿Ñедком ÑÐ°Ð¼Ð¾Ð¼Ñ Ñебе. ÐÑоÑеÑÑ Ð¼Ð¾Ð¶ÐµÑ Ð·Ð°Ð´Ð°ÑÑ ÑобÑÑвеннÑй коÑневой каÑалог пÑи помоÑи ÑиÑÑемного вÑзова _chroot_, и ÑÑÑановиÑÑ ÑекÑÑий каÑалог ÑиÑÑемнÑм вÑзовом _chdir_. ÐаждÑй пÑоÑеÑÑ Ð¼Ð¾Ð¶ÐµÑ Ð² лÑбой Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð²ÑполниÑÑ Ð²Ñзов _chdir_, но _chroot_ позволено вÑполнÑÑÑ ÑолÑко пÑоÑеÑÑÑ Ñ Ð°Ð´Ð¼Ð¸Ð½Ð¸ÑÑÑаÑивнÑми пÑивилегиÑми. _Chroot_ обÑÑно иÑполÑзÑеÑÑÑ Ð´Ð»Ñ Ð¾Ð³ÑаниÑÐµÐ½Ð¸Ñ Ð´Ð¾ÑÑÑпа к ÑиÑÑеме. @@ -435,6 +352,7 @@ image::fig2.png[ÐеÑево неболÑÑой Ñайловой ÑиÑÑемÑ] Ð¤Ð°Ð¹Ð»Ñ Ð¾ÑÐ³Ð°Ð½Ð¸Ð·Ð¾Ð²Ð°Ð½Ñ Ð¸ÐµÑаÑÑ Ð¸ÑеÑки в _каÑалоги_. ÐаÑалог ÑвлÑеÑÑÑ Ñипом Ñайла, но, в оÑлиÑие Ð¾Ñ Ð¾Ð±ÑÑнÑÑ Ñайлов, каÑалог Ð¸Ð¼ÐµÐµÑ ÑÑÑÑкÑÑÑÑ, опÑеделÑемÑÑ ÑиÑÑемой. ÐÑоÑеÑÑ Ð¼Ð¾Ð¶ÐµÑ ÑиÑаÑÑ ÐºÐ°Ñалог, как бÑдÑо ÑÑо обÑÑнÑй Ñайл, но ÑолÑко ÑдÑÑ ÑазÑеÑено изменÑÑÑ ÐºÐ°Ñалог. ÐаÑалоги ÑоздаÑÑÑÑ ÑиÑÑемнÑм вÑзовом _mkdir_ и ÑдалÑÑÑÑÑ ÑиÑÑемнÑм вÑзовом _rmdir_. Ðо 4.2BSD ÑиÑÑемнÑе вÑÐ·Ð¾Ð²Ñ _mkdir_ и _rmdir_ бÑли ÑÐµÐ°Ð»Ð¸Ð·Ð¾Ð²Ð°Ð½Ñ ÐºÐ°Ðº поÑледоваÑелÑноÑÑÑ ÑиÑÑемнÑÑ Ð²Ñзовов _link_ и _un link_. ÐмелоÑÑ ÑÑи пÑиÑÐ¸Ð½Ñ Ð´Ð»Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ ÑиÑÑемнÑÑ Ð²Ñзовов ÑпеÑиалÑно Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¸ ÑÐ´Ð°Ð»ÐµÐ½Ð¸Ñ ÐºÐ°Ñалогов: +[arabic] . ÐпеÑаÑÐ¸Ñ Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ñделана аÑомаÑной. ÐÑли ÑиÑÑема завеÑÑила ÑабоÑÑ Ð°Ð²Ð°Ñийно, Ñо каÑалог не Ð¼Ð¾Ð¶ÐµÑ Ð¾ÑÑаваÑÑÑÑ Ð² пÑомежÑÑоÑном ÑоÑÑоÑнии, ÑÑо Ð¼Ð¾Ð¶ÐµÑ ÑлÑÑиÑÑÑÑ Ð¿Ñи поÑледоваÑелÑном вÑзове ÑеÑии опеÑаÑий. . ÐÑи ÑабоÑе ÑеÑевой Ñайловой ÑиÑÑÐµÐ¼Ñ Ñоздание и Ñдаление Ñайлов и каÑалогов Ð´Ð¾Ð»Ð¶Ð½Ñ Ð²ÑполнÑÑÑÑÑ Ð°ÑомаÑно, ÑÑÐ¾Ð±Ñ Ð¼Ð¾Ð³Ð»Ð¸ вÑполнÑÑÑÑÑ Ð¿Ð¾ÑледоваÑелÑно. . ÐÑи ÑеализаÑии поддеÑжки не-UNIX ÑайловÑÑ ÑиÑÑем, ÑÐ°ÐºÐ¸Ñ , как ÑÐ°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема MS-DOS, на дÑÑгом Ñазделе диÑка, Ð¼Ð¾Ð¶ÐµÑ Ð¾ÐºÐ°Ð·Ð°ÑÑÑÑ, ÑÑо ÑÑа ÑÐ°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема не поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ ÑÑÑлоÑнÑÑ Ð¾Ð¿ÐµÑаÑий. ХоÑÑ Ð´ÑÑгие ÑайловÑе ÑиÑÑÐµÐ¼Ñ Ð¼Ð¾Ð³ÑÑ Ð¿Ð¾Ð´Ð´ÐµÑживаÑÑ ÐºÐ¾Ð½ÑепÑÐ¸Ñ ÐºÐ°Ñалогов, ÑкоÑее вÑего, они не бÑдÑÑ ÑоздаваÑÑ Ð¸ ÑдалÑÑÑ ÐºÐ°Ñалоги Ñо ÑÑÑлками, как ÑÑо делаеÑÑÑ Ð² Ñайловой ÑиÑÑеме UNIX. СооÑвеÑÑÑвенно они могÑÑ ÑоздаваÑÑ Ð¸ и ÑдалÑÑÑ ÐºÐ°Ñалоги ÑолÑко пÑи налиÑÐ ¸Ð¸ ÑвнÑÑ Ð·Ð°Ð¿ÑоÑов на Ñдаление или Ñоздание каÑалогов. @@ -447,6 +365,7 @@ image::fig2.png[ÐеÑево неболÑÑой Ñайловой ÑиÑÑемÑ] ÐÐ½Ð¾Ð²Ñ ÑоздаваемÑм Ñайлам пÑиÑваиваеÑÑÑ Ð¸Ð´ÐµÐ½ÑиÑикаÑÐ¾Ñ Ð¿Ð¾Ð»ÑзоваÑÐµÐ»Ñ Ð¿ÑоÑеÑÑа, коÑоÑÑй Ð¸Ñ Ñоздал, и иденÑиÑикаÑÐ¾Ñ Ð³ÑÑÐ¿Ð¿Ñ ÐºÐ°Ñалога, в коÑоÑом они бÑли ÑозданÑ. ÐÐ»Ñ Ð·Ð°ÑиÑÑ Ñайлов пÑименÑеÑÑÑ ÑÑÐµÑ ÑÑовневÑй Ð¼ÐµÑ Ð°Ð½Ð¸Ð·Ð¼ ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð´Ð¾ÑÑÑпом. ÐÑи ÑÑи ÑÑÐ¾Ð²Ð½Ñ Ð¾Ð¿ÑеделÑÑÑ Ð´Ð¾ÑÑÑпноÑÑÑ Ñайла Ð´Ð»Ñ +[arabic] . ÐолÑзоваÑелÑ, коÑоÑÑй ÑвлÑеÑÑÑ Ð²Ð»Ð°Ð´ÐµÐ»ÑÑем Ñайла . ÐÑÑппÑ, коÑоÑÐ°Ñ Ð¿ÑипиÑана ÑÐ°Ð¹Ð»Ñ . ÐÑÐµÑ Ð¾ÑÑалÑнÑÑ @@ -457,7 +376,7 @@ image::fig2.png[ÐеÑево неболÑÑой Ñайловой ÑиÑÑемÑ] Ранние веÑÑии UNIX имели огÑаниÑение в 14 Ñимволов на Ð¸Ð¼Ñ Ñайла. ÐÑо огÑаниÑение заÑаÑÑÑÑ Ð²ÑзÑвало пÑоблемÑ. ÐапÑимеÑ, кÑоме еÑÑеÑÑвенного Ð¶ÐµÐ»Ð°Ð½Ð¸Ñ Ð¿Ð¾Ð»ÑзоваÑелей даваÑÑ Ñайлам длиннÑе опиÑаÑелÑнÑе имена, ÑаÑпÑоÑÑÑаненнÑм ÑпоÑобом ÑоÑмиÑоваÑÑ Ð¸Ð¼ÐµÐ½Ð° Ñайлов ÑвлÑеÑÑÑ Ð¸ÑполÑзование ÑоÑмаÑа [.filename]#basename.extension#, где ÑаÑÑиÑение (ÑказÑваÑÑее на Ñип Ñайла, Ñкажем, `.c` Ð´Ð»Ñ Ð¸ÑÑ Ð¾Ð´Ð½Ð¾Ð³Ð¾ года на ÑзÑке C или `.o` Ð´Ð»Ñ Ð¿ÑомежÑÑоÑного двоиÑного обÑекÑа) Ð¸Ð¼ÐµÐµÑ Ð´Ð»Ð¸Ð½Ñ Ð¾Ñ Ð¾Ð´Ð½Ð¾Ð³Ð¾ до ÑÑÐµÑ Ñимволов, оÑÑавлÑÑ Ð¾Ñ 10 до 12 Ñимволов на Ð¸Ð¼Ñ Ñайла. СиÑÑÐµÐ¼Ñ ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¸ÑÑ Ð¾Ð´Ð½Ñм кодо м и ÑедакÑоÑÑ Ð¾Ð±ÑÑно иÑполÑзÑÑÑ Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸ÑелÑно два Ñимвола Ð´Ð»Ñ ÑÐ²Ð¾Ð¸Ñ Ñелей, Ð´Ð»Ñ Ð¿ÑеÑикÑа или ÑÑÑÑикÑа имени Ñайла, пÑи ÑÑом оÑÑаеÑÑÑ Ð¾Ñ Ð²Ð¾ÑÑми до 10 Ñимволов. РкаÑеÑÑве имени Ñайла легко иÑполÑзоваÑÑ Ð¾Ñ 10 до 12 Ñимволов одного английÑкого Ñлова (напÑимеÑ, `multiplexer`). -Ðожно ÑмиÑиÑÑÑÑ Ñ ÑÑими огÑаниÑениÑми, но ÑÑо непоÑледоваÑелÑно и даже опаÑно, поÑÐ¾Ð¼Ñ ÑÑо дÑÑгие ÑиÑÑÐµÐ¼Ñ UNIX могÑÑ ÑабоÑаÑÑ Ñо ÑÑÑоками, пÑевÑÑаÑÑими ÑÑÐ¾Ñ Ð»Ð¸Ð¼Ð¸Ñ, пÑи Ñоздании Ñайлов, но заÑем Ð¸Ð¼Ñ Ð±ÑÐ´ÐµÑ _обÑезано_. ÐÑÑ Ð¾Ð´Ð½Ñй Ñайл Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ [.filename]#multiplexer.c#, ÑодеÑжаÑий иÑÑ Ð¾Ð´Ð½Ñй код на ÑзÑке C, (Ñже 13 Ñимволов) Ð¼Ð¾Ð¶ÐµÑ Ð¸Ð¼ÐµÑÑ ÑооÑвеÑÑÑвÑÑÑий Ñайл из ÑиÑÑÐµÐ¼Ñ ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¸ÑÑ Ð¾Ð´Ð½Ñм кодом Ñ Ð¿ÑеÑикÑом `s.`, пÑи ÑÑом полÑÑаеÑÑÑ Ð¸Ð¼Ñ Ñайла [.filename]#s.multiplexer#, коÑÐ ¾Ñое не не бÑÐ´ÐµÑ Ð¾ÑлиÑаÑÑÑÑ Ð¾Ñ Ñайла ÑиÑÑÐµÐ¼Ñ ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¸ÑÑ Ð¾Ð´Ð½Ñм кодом Ð´Ð»Ñ Ñайла [.filename]#multiplexer.ms#, ÑодеÑжаÑегР¾ иÑÑ Ð¾Ð´Ð½Ñй код `troff` Ð´Ð»Ñ Ð´Ð¾ÐºÑменÑаÑии пÑогÑÐ°Ð¼Ð¼Ñ Ð½Ð° ÑзÑке C. СодеÑжимое двÑÑ Ð¾ÑигиналÑнÑÑ Ñайлов Ð¼Ð¾Ð¶ÐµÑ Ð¾ÐºÐ°Ð·Ð°ÑÑÑÑ Ð¿ÐµÑепÑÑаннÑм без ÐºÐ°ÐºÐ¸Ñ -либо пÑедÑпÑеждений Ð¾Ñ ÑиÑÑÐµÐ¼Ñ ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¸ÑÑ Ð¾Ð´Ð½Ñм кодом. ÐÑи ÑÑаÑелÑном кодиÑовании ÑÑÑ Ð¿ÑÐ¾Ð±Ð»ÐµÐ¼Ñ Ð¼Ð¾Ð¶Ð½Ð¾ обнаÑÑжиÑÑ, но поддеÑжка длиннÑÑ Ð¸Ð¼ÐµÐ½ Ñайлов, впеÑвÑе поÑвивÑаÑÑÑ Ð² 4.2BSD, пÑакÑиÑеÑки полноÑÑÑÑ Ð»Ð¸ÐºÐ²Ð¸Ð´Ð¸Ñовала ÑÑÑ Ð¿ÑоблемÑ. +Ðожно ÑмиÑиÑÑÑÑ Ñ ÑÑими огÑаниÑениÑми, но ÑÑо непоÑледоваÑелÑно и даже опаÑно, поÑÐ¾Ð¼Ñ ÑÑо дÑÑгие ÑиÑÑÐµÐ¼Ñ UNIX могÑÑ ÑабоÑаÑÑ Ñо ÑÑÑоками, пÑевÑÑаÑÑими ÑÑÐ¾Ñ Ð»Ð¸Ð¼Ð¸Ñ, пÑи Ñоздании Ñайлов, но заÑем Ð¸Ð¼Ñ Ð±ÑÐ´ÐµÑ _обÑезано_. ÐÑÑ Ð¾Ð´Ð½Ñй Ñайл Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ [.filename]#multiplexer.c#, ÑодеÑжаÑий иÑÑ Ð¾Ð´Ð½Ñй код на ÑзÑке C, (Ñже 13 Ñимволов) Ð¼Ð¾Ð¶ÐµÑ Ð¸Ð¼ÐµÑÑ ÑооÑвеÑÑÑвÑÑÑий Ñайл из ÑиÑÑÐµÐ¼Ñ ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¸ÑÑ Ð¾Ð´Ð½Ñм кодом Ñ Ð¿ÑеÑикÑом `s.`, пÑи ÑÑом полÑÑаеÑÑÑ Ð¸Ð¼Ñ Ñайла [.filename]#s.multiplexer#, коÑÐ ¾Ñое не бÑÐ´ÐµÑ Ð¾ÑлиÑаÑÑÑÑ Ð¾Ñ Ñайла ÑиÑÑÐµÐ¼Ñ ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¸ÑÑ Ð¾Ð´Ð½Ñм кодом Ð´Ð»Ñ Ñайла [.filename]#multiplexer.ms#, ÑодеÑжаÑего Ð¸Ñ Ñ Ð¾Ð´Ð½Ñй код `troff` Ð´Ð»Ñ Ð´Ð¾ÐºÑменÑаÑии пÑогÑÐ°Ð¼Ð¼Ñ Ð½Ð° ÑзÑке C. СодеÑжимое двÑÑ Ð¾ÑигиналÑнÑÑ Ñайлов Ð¼Ð¾Ð¶ÐµÑ Ð¾ÐºÐ°Ð·Ð°ÑÑÑÑ Ð¿ÐµÑепÑÑаннÑм без ÐºÐ°ÐºÐ¸Ñ -либо пÑедÑпÑеждений Ð¾Ñ ÑиÑÑÐµÐ¼Ñ ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¸ÑÑ Ð¾Ð´Ð½Ñм кодом. ÐÑи ÑÑаÑелÑном кодиÑовании ÑÑÑ Ð¿ÑÐ¾Ð±Ð»ÐµÐ¼Ñ Ð¼Ð¾Ð¶Ð½Ð¾ обнаÑÑжиÑÑ, но поддеÑжка длиннÑÑ Ð¸Ð¼ÐµÐ½ Ñайлов, впеÑвÑе поÑвивÑаÑÑÑ Ð² 4.2BSD, пÑакÑиÑеÑки полноÑÑÑÑ Ð»Ð¸ÐºÐ²Ð¸Ð´Ð¸Ñовала ÑÑÑ Ð¿ÑоблемÑ. [[overview-filestore]] === РазмеÑение Ñайлов @@ -467,7 +386,7 @@ image::fig2.png[ÐеÑево неболÑÑой Ñайловой ÑиÑÑемÑ] ÐÑÑгой ÑаÑÑÑÑ Ð»Ð¾ÐºÐ°Ð»Ñной Ñайловой ÑиÑÑÐµÐ¼Ñ ÑвлÑеÑÑÑ Ð¾ÑганизаÑÐ¸Ñ Ð¸ ÑпÑавление даннÑми на ноÑиÑелÑÑ Ð¸Ð½ÑоÑмаÑии. РазмеÑение ÑодеÑжимого Ñайлов на ноÑиÑелÑÑ ÑвлÑеÑÑÑ Ð²Ð¾Ð¿ÑоÑом Ñ ÑанилиÑа Ñайлов. Ð 4.4BSD поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ ÑÑи ÑазлиÑнÑÑ Ñипа Ñ ÑÐ°Ð½Ð¸Ð»Ð¸Ñ Ñайлов: * ТÑадиÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑÐ°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема Berkeley Fast Filesystem -* ÐÑÑналиÑÑÐµÐ¼Ð°Ñ ÑÐ°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема, оÑÐ½Ð¾Ð²Ð°Ð½Ð½Ð°Ñ Ð½Ð° аÑÑ Ð¸ÑекÑÑÑе опеÑаÑионной ÑиÑÑÐµÐ¼Ñ Sprite <<biblio-rosenblum, [Rosenblum & Ousterhout, 1992]>> +* ÐÑÑналиÑÑÐµÐ¼Ð°Ñ ÑÐ°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема, оÑÐ½Ð¾Ð²Ð°Ð½Ð½Ð°Ñ Ð½Ð° аÑÑ Ð¸ÑекÑÑÑе опеÑаÑионной ÑиÑÑÐµÐ¼Ñ Sprite crossref:design-44bsd[biblio-rosenblum, [Rosenblum & Ousterhout, 1992]] * Ð¤Ð°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема в памÑÑи ХоÑÑ Ð¾ÑганизаÑÐ¸Ñ ÑÑÐ¸Ñ Ñ ÑÐ°Ð½Ð¸Ð»Ð¸Ñ ÑовеÑÑенно ÑазлиÑна, ÑÑи ÑазлиÑÐ¸Ñ ÑкÑÑÑÑ Ð¾Ñ Ð¿ÑоÑеÑÑов, иÑполÑзÑÑÑÐ¸Ñ ÑайловÑе ÑиÑÑемÑ. @@ -487,7 +406,7 @@ image::fig2.png[ÐеÑево неболÑÑой Ñайловой ÑиÑÑемÑ] Ðогда локалÑнÑй ÐºÐ»Ð¸ÐµÐ½Ñ Ð²ÑполнÑÐµÑ Ð¾Ð¿ÐµÑаÑÐ¸Ñ Ð½Ð° Ñдаленной Ñайловой ÑиÑÑеме, оÑоÑмлÑеÑÑÑ Ð¸ поÑÑлаеÑÑÑ Ð·Ð°Ð¿ÑÐ¾Ñ Ðº ÑеÑвеÑÑ. СеÑÐ²ÐµÑ Ð²ÑполнÑÐµÑ Ð·Ð°Ð¿ÑоÑеннÑÑ Ð¾Ð¿ÐµÑаÑÐ¸Ñ Ð¸ возвÑаÑÐ°ÐµÑ Ð»Ð¸Ð±Ð¾ запÑоÑеннÑÑ Ð¸Ð½ÑоÑмаÑиÑ, либо оÑибкÑ, поÑÐµÐ¼Ñ Ð·Ð°Ð¿ÑÐ¾Ñ Ð±Ñл оÑклонен. ÐÐ»Ñ Ð¿Ð¾Ð»ÑÑÐµÐ½Ð¸Ñ ÑдовлеÑвоÑиÑелÑной пÑоизводиÑелÑноÑÑи, ÐºÐ»Ð¸ÐµÐ½Ñ Ð´Ð¾Ð»Ð¶ÐµÐ½ кÑÑиÑоваÑÑ Ð´Ð°Ð½Ð½Ñе, к коÑоÑÑм доÑÑÑп оÑÑÑеÑÑвлÑеÑÑÑ ÑаÑÑо. СложноÑÑÑ ÑдаленнÑÑ ÑайловÑÑ ÑиÑÑем оÑÑажаеÑÑÑ Ð½Ð° поддеÑжке ÑооÑÐ²ÐµÑ ÑÑÐ²Ð¸Ñ Ð¼ÐµÐ¶Ð´Ñ ÑеÑвеÑом и множеÑÑвом его клиенÑов. -ХоÑÑ Ð·Ð° ÑÑи Ð³Ð¾Ð´Ñ Ð±Ñло ÑазÑабоÑано множеÑÑво пÑоÑоколов ÑабоÑÑ Ñ ÑдаленнÑми ÑайловÑми ÑиÑÑемами, Ñамой ÑаÑпÑоÑÑÑаненной на ÑиÑÑÐµÐ¼Ð°Ñ UNIX ÑвлÑеÑÑÑ ÑеÑÐµÐ²Ð°Ñ ÑÐ°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема Network Filesystem (NFS), коÑоÑÐ°Ñ Ð±Ñла ÑпÑоекÑиÑована и Ñеализована в Sun Microsystems. ЯдÑо 4.4BSD поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ Ð¿ÑоÑокол NFS, Ñ Ð¾ÑÑ ÐµÐ³Ð¾ ÑеализаÑÐ¸Ñ Ð±Ñла вÑполнена незавиÑимо Ð¾Ñ ÑпеÑиÑикаÑий пÑоÑокола <<biblio-macklem, [Macklem, 1994]>>. ÐÑоÑокол NFS опиÑан в Ðлаве 9. +ХоÑÑ Ð·Ð° ÑÑи Ð³Ð¾Ð´Ñ Ð±Ñло ÑазÑабоÑано множеÑÑво пÑоÑоколов ÑабоÑÑ Ñ ÑдаленнÑми ÑайловÑми ÑиÑÑемами, Ñамой ÑаÑпÑоÑÑÑаненной на ÑиÑÑÐµÐ¼Ð°Ñ UNIX ÑвлÑеÑÑÑ ÑеÑÐµÐ²Ð°Ñ ÑÐ°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема Network Filesystem (NFS), коÑоÑÐ°Ñ Ð±Ñла ÑпÑоекÑиÑована и Ñеализована в Sun Microsystems. ЯдÑо 4.4BSD поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ Ð¿ÑоÑокол NFS, Ñ Ð¾ÑÑ ÐµÐ³Ð¾ ÑеализаÑÐ¸Ñ Ð±Ñла вÑполнена незавиÑимо Ð¾Ñ ÑпеÑиÑикаÑий пÑоÑокола crossref:design-44bsd[biblio-macklem, [Macklem, 1994]]. ÐÑоÑокол NFS опиÑан в Ðлаве 9. [[overview-terminal]] === ТеÑÐ¼Ð¸Ð½Ð°Ð»Ñ @@ -510,7 +429,7 @@ image::fig2.png[ÐеÑево неболÑÑой Ñайловой ÑиÑÑемÑ] ÐаждÑй из ÑÑÐ¸Ñ ÑеÑвиÑов пÑеобÑÐ°Ð·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð½ÐµÐ·Ð°Ð²Ð¸Ñимо вÑклÑÑен пÑоÑеÑÑом пÑи помоÑи ÑпÑавлÑÑÑÐ¸Ñ Ð·Ð°Ð¿ÑоÑов. [[overview-ipc]] -=== ÐоммÑникаÑии Ð¼ÐµÐ¶Ð´Ñ Ð¿ÑоÑеÑÑами +=== ÐежпÑоÑеÑÑное взаимодейÑÑвие ÐежпÑоÑеÑÑнÑе коммÑникаÑии в 4.4BSD оÑÐ³Ð°Ð½Ð¸Ð·Ð¾Ð²Ð°Ð½Ñ Ð² _коммÑникаÑионнÑе доменÑ_. РподдеÑживаемÑм на даннÑй Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð´Ð¾Ð¼ÐµÐ½Ð°Ð¼ оÑноÑÑÑÑÑ _локалÑнÑй домен_ Ð´Ð»Ñ Ð²Ð·Ð°Ð¸Ð¼Ð¾Ð´ÐµÐ¹ÑÑÐ²Ð¸Ñ Ð¼ÐµÐ¶Ð´Ñ Ð¿ÑоÑеÑÑами, вÑполнÑÑÑимиÑÑ Ð½Ð° одной и Ñой же маÑине; _межÑеÑевой домен_ Ð´Ð»Ñ ÑвÑзи Ð¼ÐµÐ¶Ð´Ñ Ð¿ÑоÑеÑÑами поÑÑедÑÑвом набоÑа пÑоÑоколов TCP/IP (возможно, в ÑеÑи ÐнÑеÑнеÑ); ÑемейÑÑво пÑоÑоколов ISO/OSI Ð´Ð»Ñ Ð²Ð·Ð°Ð¸Ð¼Ð¾Ð´ÐµÐ¹ÑÑÐ²Ð¸Ñ Ð¼ÐµÐ¶Ð´Ñ ÑайÑами, коÑоÑÑм нÑжна именно ÑÐ°ÐºÐ°Ñ ÑвÑзÑ, и _домен XN S_ Ð´Ð»Ñ ÐºÐ¾Ð¼Ð¼ÑникаÑий Ð¼ÐµÐ¶Ð´Ñ Ð¿ÑоÑеÑÑами пÑи помоÑи пÑоÑоколов XEROX Network Systems (XNS). @@ -520,7 +439,7 @@ image::fig2.png[ÐеÑево неболÑÑой Ñайловой ÑиÑÑемÑ] СокеÑÑ Ð¼Ð¾Ð³ÑÑ Ð¸Ð¼ÐµÑÑ Ð°Ð´ÑеÑа, ÑвÑзаннÑе Ñ Ð½Ð¸Ð¼Ð¸. ФоÑÐ¼Ð°Ñ Ð¸ ÑмÑÑл адÑеÑов ÑокеÑов завиÑÑÑ Ð¾Ñ ÐºÐ¾Ð¼Ð¼ÑникаÑионного домена, в коÑоÑом бÑл Ñоздан ÑокеÑ. ÐÑивÑзка имени к ÑокеÑÑ Ð² локалÑном домене пÑÐ¸Ð²Ð¾Ð´Ð¸Ñ Ðº ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ñайла в Ñайловой ÑиÑÑеме. -ÐбÑÑнÑе даннÑе, пеÑедаваемÑе и полÑÑаемÑе пÑи помоÑи ÑокеÑов, не имеÑÑ Ñипа. ÐопÑоÑÑ Ð¿ÑедÑÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð´Ð°Ð½Ð½ÑÑ Ð·Ð°Ð²Ð¸ÑÑÑ Ð¾Ñ Ð±Ð¸Ð±Ð»Ð¸Ð¾Ñек, коÑоÑÑе Ð½Ð°Ñ Ð¾Ð´ÑÑÑÑ Ð½Ð° веÑÑ Ñ ÐºÐ¾Ð¼Ð¼ÑникаÑионнÑÑ ÑеÑвиÑов. Ðдобавок к пеÑедаÑе обÑÑнÑÑ Ð´Ð°Ð½Ð½ÑÑ , коммÑникаÑионнÑе Ð´Ð¾Ð¼ÐµÐ½Ñ Ð¼Ð¾Ð³ÑÑ Ð¿Ð¾Ð´Ð´ÐµÑживаÑÑ Ð¿ÐµÑедаÑÑ Ð¸ пÑием ÑпеÑиалÑнÑÑ Ñипов даннÑÑ , коÑоÑÑе назÑваÑÑÑÑ _пÑавами доÑÑÑпа_. ÐапÑимеÑ, локалÑнÑй домен иÑполÑзÑÐµÑ ÑÑÑ Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾ÑÑÑ Ð´Ð»Ñ Ð¿ÐµÑедаÑи деÑкÑипÑоÑов Ð¼ÐµÐ¶Ð´Ñ Ð¿ÑÐ¾Ñ ÐµÑÑами. +ÐбÑÑнÑе даннÑе, пеÑедаваемÑе и полÑÑаемÑе пÑи помоÑи ÑокеÑов, не имеÑÑ Ñипа. ÐопÑоÑÑ Ð¿ÑедÑÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð´Ð°Ð½Ð½ÑÑ Ð·Ð°Ð²Ð¸ÑÑÑ Ð¾Ñ Ð±Ð¸Ð±Ð»Ð¸Ð¾Ñек, коÑоÑÑе Ð½Ð°Ñ Ð¾Ð´ÑÑÑÑ Ð½Ð° веÑÑ Ñ ÐºÐ¾Ð¼Ð¼ÑникаÑионной подÑиÑÑемÑ. Ðдобавок к пеÑедаÑе обÑÑнÑÑ Ð´Ð°Ð½Ð½ÑÑ , коммÑникаÑионнÑе Ð´Ð¾Ð¼ÐµÐ½Ñ Ð¼Ð¾Ð³ÑÑ Ð¿Ð¾Ð´Ð´ÐµÑживаÑÑ Ð¿ÐµÑедаÑÑ Ð¸ пÑием ÑпеÑиалÑнÑÑ Ñипов даннÑÑ , коÑоÑÑе назÑваÑÑÑÑ _пÑавами доÑÑÑпа_. ÐапÑимеÑ, локалÑнÑй домен иÑполÑзÑÐµÑ ÑÑÑ Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾ÑÑÑ Ð´Ð»Ñ Ð¿ÐµÑедаÑи деÑкÑипÑоÑов Ð¼ÐµÐ¶Ð´Ñ Ð¿Ñ Ð¾ÑеÑÑами. Ðо 4.2BSD ÑеÑевÑе ÑеализаÑии в UNIX обÑÑно ÑабоÑали ÑеÑез инÑеÑÑейÑÑ ÑимволÑнÑÑ ÑÑÑÑойÑÑв. Ðдной из Ñелей ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¸Ð½ÑеÑÑейÑа ÑокеÑов бÑло обеÑпеÑение ÑабоÑÑ Ð¿ÑоÑÑенÑким пÑогÑаммам без Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð½Ð° поÑоковÑÑ ÑоединениÑÑ . Такие пÑогÑÐ°Ð¼Ð¼Ñ Ð¼Ð¾Ð³ÑÑ ÑабоÑаÑÑ, еÑли ÑолÑко не менÑÑÑÑÑ ÑиÑÑемнÑе вÑÐ·Ð¾Ð²Ñ _read_ и _write_. СооÑвеÑÑÑвенно, оÑигиналÑнÑе инÑеÑÑейÑÑ Ð½Ðµ ÑÑогалиÑÑ, но бÑли иÑпÑÐ°Ð²Ð»ÐµÐ½Ñ Ð´Ð»Ñ ÑабоÑÑ Ñ Ð¿Ð¾ÑоковÑми ÑокеÑами. ÐÐ»Ñ Ð±Ð¾Ð»ÐµÐµ ÑложнÑÑ ÑокеÑо в, ÑÐ°ÐºÐ¸Ñ , как Ñе, ÑÑо иÑполÑзÑÑÑÑÑ Ð´Ð»Ñ Ð¿Ð¾ÑÑлки даÑагÑамм и в коÑоÑÑÑ Ð¿Ñи каждом вÑзове _send_ должен ÑказÑваÑÑÑÑ Ð°Ð´ÑÐµÑ Ð½Ð°Ð·Ð½Ð°ÑениÑ, бÑл добавлен новÑй инÑеÑÑейÑ. @@ -553,7 +472,7 @@ image::fig2.png[ÐеÑево неболÑÑой Ñайловой ÑиÑÑемÑ] [bibliography] [[references]] -== СÑÑлки +== СпиÑок лиÑеÑаÑÑÑÑ [[biblio-accetta]] Accetta et al, 1986 Mach: A New Kernel Foundation for UNIX Development" M.Accetta R.Baron W.Bolosky D.Golub R.Rashid A.Tevanian M.Young 93-113 USENIX Association Conference Proceedings USENIX Association June 1986 diff --git a/documentation/content/ru/books/design-44bsd/_index.po b/documentation/content/ru/books/design-44bsd/_index.po new file mode 100644 index 0000000000..e94660b26e --- /dev/null +++ b/documentation/content/ru/books/design-44bsd/_index.po @@ -0,0 +1,3677 @@ +# SOME DESCRIPTIVE TITLE +# Copyright (C) YEAR The FreeBSD Project +# This file is distributed under the same license as the FreeBSD Documentation package. +# Vladlen Popolitov <[email protected]>, 2025. +msgid "" +msgstr "" +"Project-Id-Version: FreeBSD Documentation VERSION\n" +"POT-Creation-Date: 2025-10-03 18:09+0300\n" +"PO-Revision-Date: 2025-10-03 04:45+0000\n" +"Last-Translator: Vladlen Popolitov <[email protected]>\n" +"Language-Team: Russian <https://translate-dev.freebsd.org/projects/" +"documentation/booksdesign-44bsd_index/ru/>\n" +"Language: ru\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" +"X-Generator: Weblate 4.17\n" + +#. type: Yaml Front Matter Hash Value: description +#: documentation/content/en/books/design-44bsd/_index.adoc:1 +#, no-wrap +msgid "Donated by Addison-Wesley, provides a design overview of 4.4BSD, from which FreeBSD was originally derived" +msgstr "ÐÑедоÑÑавлено издаÑелÑÑÑвом Addison-Wesley и пÑедоÑÑавлÑÐµÑ Ð¾Ð±Ð·Ð¾Ñ Ð°ÑÑ Ð¸ÑекÑÑÑÑ 4.4BSD, Ð¾Ñ ÐºÐ¾ÑоÑой изнаÑалÑно пÑоизоÑел FreeBSD" + +#. type: Title = +#: documentation/content/en/books/design-44bsd/_index.adoc:1 +#: documentation/content/en/books/design-44bsd/_index.adoc:16 +#, no-wrap +msgid "The Design and Implementation of the 4.4BSD Operating System" +msgstr "ÐÑÑ Ð¸ÑекÑÑÑа и ÑеализаÑÐ¸Ñ Ð¾Ð¿ÐµÑаÑионной ÑиÑÑÐµÐ¼Ñ 4.4BSD" + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:50 +msgid "'''" +msgstr "'''" + +#. type: Title == +#: documentation/content/en/books/design-44bsd/_index.adoc:54 +#, no-wrap +msgid "Design Overview of 4.4BSD" +msgstr "ÐÐ±Ð·Ð¾Ñ Ð°ÑÑ Ð¸ÑекÑÑÑÑ 4.4BSD" + +#. type: Title === +#: documentation/content/en/books/design-44bsd/_index.adoc:57 +#, no-wrap +msgid "4.4BSD Facilities and the Kernel" +msgstr "ÐодÑиÑÑÐµÐ¼Ñ Ð¸ ÑдÑо 4.4BSD" + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:61 +msgid "" +"The 4.4BSD kernel provides four basic facilities: processes, a filesystem, " +"communications, and system startup. This section outlines where each of " +"these four basic services is described in this book." +msgstr "" +"ЯдÑо 4.4BSD пÑедоÑÑавлÑÐµÑ ÑеÑÑÑе базовÑÑ Ð¿Ð¾Ð´ÑиÑÑемÑ: пÑоÑеÑÑÑ, ÑайловÑÑ " +"ÑиÑÑемÑ, коммÑникаÑии и запÑÑк ÑиÑÑемÑ. ÐÑÐ¾Ñ Ñаздел пеÑеÑиÑлÑеÑ, в каком " +"меÑÑе ÑÑой книги опиÑана ÐºÐ°Ð¶Ð´Ð°Ñ Ð¸Ð· ÑÑÐ¸Ñ Ð¿Ð¾Ð´ÑиÑÑем." + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:63 +msgid "" +"Processes constitute a thread of control in an address space. Mechanisms for " +"creating, terminating, and otherwise controlling processes are described in " +"Chapter 4. The system multiplexes separate virtual-address spaces for each " +"process; this memory management is discussed in Chapter 5." +msgstr "" +"ÐÑоÑеÑÑÑ Ð¾Ð±ÑазÑÑÑ Ð¿Ð¾Ñок ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð² адÑеÑном пÑоÑÑÑанÑÑве. ÐÐµÑ Ð°Ð½Ð¸Ð·Ð¼Ñ " +"ÑозданиÑ, завеÑÑÐµÐ½Ð¸Ñ Ð¸ дÑÑгие ÑпÑавлÑÑÑие пÑоÑеÑÑÑ Ð¾Ð¿Ð¸ÑÐ°Ð½Ñ Ð² Ðлаве 4. ÐÐ»Ñ " +"каждого пÑоÑеÑÑа ÑиÑÑема мÑлÑÑиплекÑиÑÑÐµÑ Ð¾ÑделÑное виÑÑÑалÑное адÑеÑное " +"пÑоÑÑÑанÑÑво; Ñакое ÑпÑавление памÑÑÑÑ Ð¾Ð±ÑÑждаеÑÑÑ Ð² Ðлаве 5." + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:64 +msgid "" +"The user interface to the filesystem and devices is similar; common aspects " +"are discussed in Chapter 6. The filesystem is a set of named files, " +"organized in a tree-structured hierarchy of directories, and of operations " +"to manipulate them, as presented in Chapter 7. Files reside on physical " +"media such as disks. 4.4BSD supports several organizations of data on the " +"disk, as set forth in Chapter 8. Access to files on remote machines is the " +"subject of Chapter 9. Terminals are used to access the system; their " +"operation is the subject of Chapter 10." +msgstr "" +"ÐÐµÑ Ð°Ð½Ð¸Ð·Ð¼ доÑÑÑпа полÑзоваÑÐµÐ»Ñ Ðº Ñайловой ÑиÑÑеме и ÑÑÑÑойÑÑвам один и ÑÐ¾Ñ " +"же; обÑие аÑпекÑÑ Ð¾Ð±ÑÑждаÑÑÑÑ Ð² Ðлаве 6. Ð¤Ð°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема ÑвлÑеÑÑÑ Ð½Ð°Ð±Ð¾Ñом " +"именованнÑÑ Ñайлов, оÑганизованнÑÑ Ð² дÑевовиднÑÑ Ð¸ÐµÑаÑÑ Ð¸Ñ ÐºÐ°Ñалогов, а " +"опеÑаÑии по ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¸Ð¼Ð¸ пÑедÑÑÐ°Ð²Ð»ÐµÐ½Ñ Ð² Ðлаве 7. Ð¤Ð°Ð¹Ð»Ñ ÑаÑполагаÑÑÑÑ Ð½Ð° " +"ÑÐ°ÐºÐ¸Ñ ÑизиÑеÑÐºÐ¸Ñ Ð½Ð¾ÑиÑелÑÑ , как диÑки. 4.4BSD поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ Ð½ÐµÑколÑко Ñипов " +"оÑганизаÑии даннÑÑ Ð½Ð° диÑке, как опиÑано далее в Ðлаве 8. ÐоÑÑÑп к Ñайлам на " +"ÑдаленнÑÑ Ð¼Ð°ÑÐ¸Ð½Ð°Ñ ÑвлÑеÑÑÑ Ð¿ÑедмеÑом обÑÑÐ¶Ð´ÐµÐ½Ð¸Ñ Ð² Ðлаве 9. ÐÐ»Ñ Ð´Ð¾ÑÑÑпа к " +"ÑиÑÑеме ТеÑÐ¼Ð¸Ð½Ð°Ð»Ñ Ð¸ÑполÑзÑÑÑÑÑ ÑеÑминалÑ; Ð¸Ñ ÑÑнкÑиониÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¿Ð¾ÑвÑÑена " +"глава 10." + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:65 +msgid "" +"Communication mechanisms provided by traditional UNIX systems include " +"simplex reliable byte streams between related processes (see pipes, Section " +"11.1), and notification of exceptional events (see signals, Section 4.7). " +"4.4BSD also has a general interprocess-communication facility. This " +"facility, described in Chapter 11, uses access mechanisms distinct from " +"those of the filesystem, but, once a connection is set up, a process can " +"access it as though it were a pipe. There is a general networking framework, " +"discussed in Chapter 12, that is normally used as a layer underlying the IPC " +"facility. Chapter 13 describes a particular networking implementation in " +"detail." +msgstr "" +"ÐÐµÑ Ð°Ð½Ð¸Ð·Ð¼Ñ ÐºÐ¾Ð¼Ð¼ÑникаÑий, пÑедоÑÑавлÑемÑе ÑÑадиÑионнÑми UNIX-ÑиÑÑемами, " +"вклÑÑаÑÑ Ð¾Ð´Ð½Ð¾Ð½Ð°Ð¿ÑавленнÑе поÑоки байÑов Ð¼ÐµÐ¶Ð´Ñ ÑвÑзаннÑми пÑоÑеÑÑами " +"(ÑмоÑÑиÑе маÑеÑиал о конвейеÑÐ°Ñ Ð² Разделе 11.1) и извеÑение об " +"иÑклÑÑиÑелÑнÑÑ ÑобÑÑиÑÑ (ÑмоÑÑиÑе маÑеÑиал о ÑÐ¸Ð³Ð½Ð°Ð»Ð°Ñ Ð² Разделе 4.7). Ð " +"4.4BSD имееÑÑÑ Ñакже Ð¼ÐµÑ Ð°Ð½Ð¸Ð·Ð¼ межпÑоÑеÑÑного взаимодейÑÑÐ²Ð¸Ñ Ð¼ÐµÐ¶Ð´Ñ " +"пÑоÑеÑÑами. ÐÑÐ¾Ñ Ð¼ÐµÑ Ð°Ð½Ð¸Ð·Ð¼, опиÑÑваемÑй в Ðлаве 11, иÑполÑзÑÐµÑ ÑпоÑÐ¾Ð±Ñ " +"доÑÑÑпа, оÑлиÑаÑÑиеÑÑ Ð¾Ñ ÑÐµÑ , ÑÑо иÑполÑзÑÑÑÑÑ Ð² Ñайловой ÑиÑÑеме, но, как " +"ÑолÑко Ñоединение ÑÑÑановлено, пÑоÑеÑÑ Ð¼Ð¾Ð¶ÐµÑ ÑабоÑаÑÑ Ñ Ð½Ð¸Ð¼, как бÑдÑо ÑÑо " +"конвейеÑ. ÐмееÑÑÑ Ð¸ Ð¼ÐµÑ Ð°Ð½Ð¸Ð·Ð¼ ÑабоÑÑ Ñ ÑеÑÑÑ, опиÑÑваемÑй в Ðлаве 12, коÑоÑÑй " +"обÑÑно иÑполÑзÑеÑÑÑ ÐºÐ°Ðº Ñлой ниже Ð¼ÐµÑ Ð°Ð½Ð¸Ð·Ð¼Ð° IPC. Ð Ðлаве 13 даеÑÑÑ Ð´ÐµÑалÑное " +"опиÑание конкÑеÑной ÑеализаÑии Ð¼ÐµÑ Ð°Ð½Ð¸Ð·Ð¼Ð° ÑабоÑÑ Ñ ÑеÑÑÑ." + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:66 +msgid "" +"Any real operating system has operational issues, such as how to start it " +"running. Startup and operational issues are described in Chapter 14." +msgstr "" +"РлÑбой опеÑаÑионной ÑиÑÑеме пÑиÑÑÑÑÑвÑÑÑ Ð²Ð¾Ð¿ÑоÑÑ ÑпÑавлениÑ, Ñакие, как ее " +"запÑÑк. ÐапÑÑк и вопÑоÑÑ ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¾Ð±ÑÑждаÑÑÑÑ Ð² Ðлаве 14." + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:70 +msgid "" +"Sections 2.3 through 2.14 present introductory material related to Chapters " +"3 through 14. We shall define terms, mention basic system calls, and " +"explore historical developments. Finally, we shall give the reasons for " +"many major design decisions." +msgstr "" +"Ð Ð°Ð·Ð´ÐµÐ»Ñ Ñ 2.3 по 2.14 пÑедÑÑавлÑÑÑ Ñобой вводнÑй маÑеÑиал, оÑноÑÑÑийÑÑ Ðº " +"главам Ñ 3 по 14. ÐÑ Ð¾Ð¿Ñеделим понÑÑиÑ, коÑнемÑÑ Ð¾ÑновнÑÑ ÑиÑÑемнÑÑ Ð²Ñзовов " +"и ÑаÑÑмоÑÑим иÑÑоÑиÑеÑкие ÑазÑабоÑки. ÐаконеÑ, Ð¼Ñ ÑаÑÑкажем о пÑиÑÐ¸Ð½Ð°Ñ " +"Ð¼Ð½Ð¾Ð³Ð¸Ñ ÐºÐ»ÑÑевÑÑ Ð°ÑÑ Ð¸ÑекÑÑÑнÑÑ ÑеÑений." + +#. type: Title ==== +#: documentation/content/en/books/design-44bsd/_index.adoc:71 +#, no-wrap +msgid "The Kernel" +msgstr "ЯдÑо" + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:78 +msgid "" +"The _kernel_ is the part of the system that runs in protected mode and " +"mediates access by all user programs to the underlying hardware (e.g., CPU, " +"disks, terminals, network links) and software constructs (e.g., filesystem, " +"network protocols). The kernel provides the basic system facilities; it " +"creates and manages processes, and provides functions to access the " +"filesystem and communication facilities. These functions, called _system " +"calls_ appear to user processes as library subroutines. These system calls " +"are the only interface that processes have to these facilities. Details of " +"the system-call mechanism are given in Chapter 3, as are descriptions of " +"several kernel mechanisms that do not execute as the direct result of a " +"process doing a system call." +msgstr "" +"_ЯдÑо_ ÑвлÑеÑÑÑ ÑаÑÑÑÑ ÑиÑÑемÑ, коÑоÑÐ°Ñ ÑабоÑÐ°ÐµÑ Ð² заÑиÑенном Ñежиме и " +"ÑпÑавлÑÐµÑ Ð´Ð¾ÑÑÑпом вÑÐµÑ Ð¿Ð¾Ð»ÑзоваÑелÑÑÐºÐ¸Ñ Ð¿ÑогÑамм к низкоÑÑÐ¾Ð²Ð½ÐµÐ¼Ñ " +"аппаÑаÑÐ½Ð¾Ð¼Ñ Ð¾Ð±ÐµÑпеÑÐµÐ½Ð¸Ñ (к пÑимеÑÑ, ЦÐУ, диÑкам, ÑеÑминалам, ÑеÑевÑм ÑвÑзÑм) " +"и пÑогÑаммнÑм компоненÑам (к пÑимеÑÑ, Ñайловой ÑиÑÑеме, ÑеÑевÑм пÑоÑоколам). " +"ЯдÑо пÑедоÑÑавлÑÐµÑ Ð¾ÑновнÑе подÑиÑÑемÑ; оно ÑÐ¾Ð·Ð´Ð°ÐµÑ Ð¿ÑоÑеÑÑÑ Ð¸ ÑпÑавлÑÐµÑ " +"ими, пÑедоÑÑавлÑÐµÑ ÑÑнкÑии Ð´Ð»Ñ Ð´Ð¾ÑÑÑпа к Ñайловой ÑиÑÑеме и ÑлÑжбам ÑвÑзи. " +"Такие ÑÑнкÑии, назÑваемÑе _ÑиÑÑемнÑми вÑзовами_, доÑÑÑÐ¿Ð½Ñ Ð¿ÑоÑеÑÑам " +"полÑзоваÑелей в виде библиоÑеÑнÑÑ Ð¿Ð¾Ð´Ð¿ÑогÑамм. ÐÑи ÑиÑÑемнÑе вÑÐ·Ð¾Ð²Ñ ÑвлÑÑÑÑÑ " +"единÑÑвеннÑм ÑпоÑобом доÑÑÑпа к ÑÑим подÑиÑÑемам. ÐодÑобно Ð¼ÐµÑ Ð°Ð½Ð¸Ð·Ð¼ ÑабоÑÑ " +"ÑиÑÑемнÑÑ Ð²Ñзовов даеÑÑÑ Ð² Ðлаве 3, вмеÑÑе Ñ Ð¾Ð¿Ð¸Ñанием некоÑоÑÑÑ Ð¼ÐµÑ Ð°Ð½Ð¸Ð·Ð¼Ð¾Ð² " +"ÑдÑа, ÑабоÑа коÑоÑÑÑ Ð½Ðµ ÑвлÑеÑÑÑ Ð¿ÑÑмÑм ÑезÑлÑÑаÑом пÑоÑеÑÑа, вÑполнÑÑÑего " +"ÑиÑÑемнÑй вÑзов." + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:84 +msgid "" +"A _kernel_ in traditional operating-system terminology, is a small nucleus " +"of software that provides only the minimal facilities necessary for " +"implementing additional operating-system services. In contemporary research " +"operating systems -- such as Chorus crossref:design-44bsd[biblio-rozier, " +"[Rozier et al, 1988]], Mach crossref:design-44bsd[biblio-accetta, [Accetta " +"et al, 1986]], Tunis crossref:design-44bsd[biblio-ewens, [Ewens et al, " +"1985]], and the V Kernel crossref:design-44bsd[biblio-cheriton, [Cheriton, " +"1988]] -- this division of functionality is more than just a logical one. " +"Services such as filesystems and networking protocols are implemented as " +"client application processes of the nucleus or kernel." +msgstr "" +"_ЯдÑо_, по ÑÑадиÑионной ÑеÑминологии опеÑаÑионнÑÑ ÑиÑÑем, ÑвлÑеÑÑÑ Ð¼Ð°Ð»ÐµÐ½Ñким " +"кÑÑком пÑогÑаммного обеÑпеÑениÑ, коÑоÑое пÑедоÑÑавлÑÐµÑ ÑолÑко минималÑнÑй " +"Ð½Ð°Ð±Ð¾Ñ Ð¿Ð¾Ð´ÑиÑÑем, Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ñй Ð´Ð»Ñ ÑеализаÑии дополниÑелÑнÑÑ ÑлÑжб " +"опеÑаÑионной ÑиÑÑемÑ. Ð ÑовÑеменнÑÑ Ð¸ÑÑледоваÑелÑÑÐºÐ¸Ñ Ð¾Ð¿ÐµÑаÑионнÑÑ ÑиÑÑÐµÐ¼Ð°Ñ " +"â ÑÐ°ÐºÐ¸Ñ , как Chorus crossref:design-44bsd[biblio-rozier, [Rozier et al, " +"1988]], Mach crossref:design-44bsd[biblio-accetta, [Accetta et al, 1986]], " +"Tunis crossref:design-44bsd[biblio-ewens, [Ewens et al, 1985]], и V Kernel " +"crossref:design-44bsd[biblio-cheriton, [Cheriton, 1988]] - Ñакое Ñазделение " +"ÑÑнкÑионалÑноÑÑи вÑполнено не ÑолÑко логиÑеÑки. Такие ÑлÑжбÑ, как ÑайловÑе " +"ÑиÑÑÐµÐ¼Ñ Ð¸ ÑеÑевÑе пÑоÑоколÑ, вÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ñ Ð² виде пÑикладнÑÑ Ð¿ÑоÑеÑÑов клиенÑов " +"ÑдÑа или микÑоÑдÑа." + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:93 +msgid "" +"The 4.4BSD kernel is not partitioned into multiple processes. This basic " +"design decision was made in the earliest versions of UNIX. The first two " +"implementations by Ken Thompson had no memory mapping, and thus made no " +"hardware-enforced distinction between user and kernel space " +"crossref:design-44bsd[biblio-ritchie, [Ritchie, 1988]]. A message-passing " +"system could have been implemented as readily as the actually implemented " +"model of kernel and user processes. The monolithic kernel was chosen for " +"simplicity and performance. And the early kernels were small; the inclusion " +"of facilities such as networking into the kernel has increased its size. " +"The current trend in operating-systems research is to reduce the kernel size " +"by placing such services in user space." +msgstr "" +"ЯдÑо 4.4BSD не ÑазбиваеÑÑÑ Ð½Ð° неÑколÑко пÑоÑеÑÑов. ÐÑо оÑновополагаÑÑее " +"аÑÑ Ð¸ÑекÑÑÑное ÑеÑение бÑло Ñделано в ÑамÑÑ ÑÐ°Ð½Ð½Ð¸Ñ Ð²ÐµÑÑиÑÑ UNIX. РпеÑвÑÑ " +"двÑÑ ÑеализаÑиÑÑ Ðена ТомпÑона (Ken Thompson) не бÑло оÑобÑажаемой памÑÑи, и " +"поÑÑÐ¾Ð¼Ñ Ð½Ðµ бÑло аппаÑаÑного ÑазлиÑÐ¸Ñ Ð¼ÐµÐ¶Ð´Ñ Ð°Ð´ÑеÑнÑм пÑоÑÑÑанÑÑвом " +"полÑзоваÑÐµÐ»Ñ Ð¸ ÑдÑа crossref:design-44bsd[biblio-ritchie, [Ritchie, 1988]]. " +"Ðогла Ð±Ñ Ð±ÑÑÑ Ð¿ÑидÑмана ÑиÑÑема обмена ÑообÑениÑми как ÑеалÑно ÑеализÑÐµÐ¼Ð°Ñ " +"Ð¼Ð¾Ð´ÐµÐ»Ñ Ð¿ÑоÑеÑÑов ÑдÑа и полÑзоваÑелÑ. ÐÐ»Ñ Ð¿ÑоÑÑоÑÑ Ð¸ ÑвелиÑÐµÐ½Ð¸Ñ " +"пÑоизводиÑелÑноÑÑи бÑло вÑбÑано монолиÑное ÑдÑо. Ð ÑÐ¾Ð¼Ñ Ð¶Ðµ Ñанние ÑдÑа бÑли " +"маленÑкими; вклÑÑение ÑÐ°ÐºÐ¸Ñ Ð¿Ð¾Ð´ÑиÑÑем, как ÑеÑевÑе коммÑникаÑии, в ÑдÑо " +"ÑвелиÑило его ÑазмеÑ. СовÑеменнÑе ÑенденÑии в облаÑÑи опеÑаÑионнÑÑ ÑиÑÑем " +"ÑводÑÑÑÑ Ðº ÑменÑÑÐµÐ½Ð¸Ñ ÑазмеÑа ÑдÑа за ÑÑÐµÑ Ð¿ÐµÑевода ÑÐ°ÐºÐ¸Ñ ÑлÑжб в " +"полÑзоваÑелÑÑкое адÑеÑное пÑоÑÑÑанÑÑво." + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:97 +msgid "" +"Users ordinarily interact with the system through a command-language " +"interpreter, called a _shell_, and perhaps through additional user " +"application programs. Such programs and the shell are implemented with " +"processes. Details of such programs are beyond the scope of this book, " +"which instead concentrates almost exclusively on the kernel." +msgstr "" +"ÐолÑзоваÑели обÑÑно обÑаÑÑÑÑ Ñ ÑиÑÑемой ÑеÑез инÑеÑпÑеÑаÑÐ¾Ñ ÑзÑка команд, " +"назÑваемÑй оболоÑкой (_shell_), и, Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ, ÑеÑез дополниÑелÑнÑе " +"пÑикладнÑе полÑзоваÑелÑÑкие пÑогÑаммÑ. Такие пÑогÑÐ°Ð¼Ð¼Ñ Ð¸ оболоÑка " +"ÑÐµÐ°Ð»Ð¸Ð·Ð¾Ð²Ð°Ð½Ñ Ð² виде пÑоÑеÑÑов. ÐодÑобное опиÑание ÑÐ°ÐºÐ¸Ñ Ð¿ÑогÑамм вÑÑ Ð¾Ð´Ð¸Ñ Ð·Ð° " +"Ñамки ÑÑой книги, коÑоÑÐ°Ñ Ð¿ÑакÑиÑеÑки полноÑÑÑÑ Ð¿Ð¾ÑвÑÑена ÑабоÑе ÑдÑа." + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:100 +msgid "" +"Sections 2.3 and 2.4 describe the services provided by the 4.4BSD kernel, " +"and give an overview of the latter's design. Later chapters describe the " +"detailed design and implementation of these services as they appear in " +"4.4BSD." +msgstr "" +"Ð ÑÐ°Ð·Ð´ÐµÐ»Ð°Ñ 2.3 и 2.4 опиÑÑваÑÑÑÑ ÑеÑвиÑÑ, пÑедоÑÑавлÑемÑе ÑдÑом 4.4BSD, и " +"даеÑÑÑ Ð¾Ð±Ð·Ð¾Ñ Ð¸Ñ Ð°ÑÑ Ð¸ÑекÑÑÑÑ. ÐоÑледÑÑÑие Ð³Ð»Ð°Ð²Ñ Ð¾Ð¿Ð¸ÑÑваÑÑ Ð¿Ð¾Ð´ÑобноÑÑи " +"аÑÑ Ð¸ÑекÑÑÑÑ Ð¸ ÑеализаÑии ÑÑÐ¸Ñ ÑеÑвиÑов в 4.4BSD." + +#. type: Title === +#: documentation/content/en/books/design-44bsd/_index.adoc:102 +#, no-wrap +msgid "Kernel Organization" +msgstr "ÐÑганизаÑÐ¸Ñ ÑдÑа" + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:105 +msgid "" +"In this section, we view the organization of the 4.4BSD kernel in two ways:" +msgstr "" +"Ð ÑÑом Ñазделе Ð¼Ñ ÑаÑÑмаÑÑиваем оÑганизаÑÐ¸Ñ ÑдÑа 4.4BSD Ñ Ð´Ð²ÑÑ ÑоÑек зÑениÑ:" + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:108 +msgid "" +"As a static body of software, categorized by the functionality offered by " +"the modules that make up the kernel" +msgstr "" +"Ðак ÑÑаÑиÑеÑкий блок пÑогÑаммного обеÑпеÑениÑ, каÑегоÑизÑемÑй по " +"ÑÑнкÑионалÑноÑÑи модÑлей, ÑоÑÑавлÑÑÑÐ¸Ñ ÑдÑо" + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:109 +msgid "" +"By its dynamic operation, categorized according to the services provided to " +"users" +msgstr "" +"Рего динамике, каÑегоÑизÑемой по ÑÑлÑгам, пÑедоÑÑавлÑемÑм полÑзоваÑелÑм" + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:112 +msgid "" +"The largest part of the kernel implements the system services that " +"applications access through system calls. In 4.4BSD, this software has been " +"organized according to the following:" +msgstr "" +"Ð¡Ð°Ð¼Ð°Ñ Ð±Ð¾Ð»ÑÑÐ°Ñ ÑаÑÑÑ ÑдÑа ÑеализÑÐµÑ ÑиÑÑемнÑе ÑÑлÑги, к коÑоÑÑм пÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ " +"обÑаÑаÑÑÑÑ ÑеÑез ÑиÑÑемнÑе вÑзовÑ. Ð 4.4BSD ÑÑо пÑогÑаммное обеÑпеÑение " +"оÑганизÑеÑÑÑ Ð¿Ð¾ ÑледÑÑÑим пÑинÑипам:" + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:114 +msgid "" +"Basic kernel facilities: timer and system-clock handling, descriptor " +"management, and process management" +msgstr "" +"ÐазовÑе подÑиÑÑÐµÐ¼Ñ ÑдÑа: обÑабоÑка ÑаймеÑов и ÑиÑÑемного ÑаймеÑа, ÑпÑавление " +"деÑкÑипÑоÑами и пÑоÑеÑÑами" + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:115 +msgid "Memory-management support: paging and swapping" +msgstr "ÐоддеÑжка ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð°Ð¼ÑÑÑÑ: подкаÑка и вÑгÑÑзка" + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:116 +msgid "" +"Generic system interfaces: the I/O, control, and multiplexing operations " +"performed on descriptors" +msgstr "" +"ÐбÑеÑиÑÑемнÑе инÑеÑÑейÑÑ: ввод/вÑвод, ÑпÑавление и мÑлÑÑиплекÑиÑование " +"опеÑаÑий, вÑполнÑемÑÑ Ð½Ð°Ð´ деÑкÑипÑоÑами" + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:117 +msgid "" +"The filesystem: files, directories, pathname translation, file locking, and " +"I/O buffer management" +msgstr "" +"Ð¤Ð°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема: ÑайлÑ, каÑалоги, пÑеобÑазование маÑÑÑÑÑов, блокиÑовка " +"Ñайлов и ÑпÑавление бÑÑеÑом ввода/вÑвода" + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:118 +msgid "" +"Terminal-handling support: the terminal-interface driver and terminal line " +"disciplines" +msgstr "" +"ÐоддеÑжка ÑабоÑÑ Ñ ÑеÑминалами: дÑÐ°Ð¹Ð²ÐµÑ ÑеÑминалÑного инÑеÑÑейÑа и ÑÐµÐ¶Ð¸Ð¼Ñ " +"ÑабоÑÑ ÑеÑминалÑного канала" + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:119 +msgid "Interprocess-communication facilities: sockets" +msgstr "ÐодÑиÑÑÐµÐ¼Ñ Ð¼ÐµÐ¶Ð¿ÑоÑеÑÑного взаимодейÑÑвиÑ: ÑокеÑÑ" + +#. type: Plain text +#: documentation/content/en/books/design-44bsd/_index.adoc:120 +msgid "" +"Support for network communication: communication protocols and generic " +"network facilities, such as routing" +msgstr "" +"ÐоддеÑжка ÑеÑевÑÑ ÐºÐ¾Ð¼Ð¼ÑникаÑий: коммÑникаÑионнÑе пÑоÑÐ¾ÐºÐ¾Ð»Ñ Ð¸ обÑеÑеÑевÑе " +"подÑиÑÑемÑ, Ñакие, как маÑÑÑÑÑизаÑиÑ" + +#. type: Block title +#: documentation/content/en/books/design-44bsd/_index.adoc:121 +#, no-wrap +msgid "Machine-independent software in the 4.4BSD kernel" +msgstr "ÐаÑинно-незавиÑимое пÑогÑаммное обеÑпеÑение в ÑдÑе 4.4BSD" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:125 +#: documentation/content/en/books/design-44bsd/_index.adoc:165 +#, no-wrap +msgid "Category" +msgstr "ÐаÑегоÑиÑ" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:125 +#: documentation/content/en/books/design-44bsd/_index.adoc:165 +#, no-wrap +msgid "Lines of code" +msgstr "СÑÑок кода" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:126 +#: documentation/content/en/books/design-44bsd/_index.adoc:166 +#, no-wrap +msgid "Percentage of kernel" +msgstr "ÐÑоÑÐµÐ½Ñ Ð¾Ñ ÑÑÑок ÑдÑа" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:126 +#, no-wrap +msgid "headers" +msgstr "заголовки" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:126 +#, no-wrap +msgid "9,393" +msgstr "9,393" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:127 +#, no-wrap +msgid "4.6" +msgstr "4.6" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:127 +#, no-wrap +msgid "initialization" +msgstr "иниÑиализаÑиÑ" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:127 +#, no-wrap +msgid "1,107" +msgstr "1,107" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:128 +#, no-wrap +msgid "0.6" +msgstr "0.6" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:128 +#, no-wrap +msgid "kernel facilities" +msgstr "подÑиÑÑÐµÐ¼Ñ ÑдÑа" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:128 +#, no-wrap +msgid "8,793" +msgstr "8,793" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:129 +#, no-wrap +msgid "4.4" +msgstr "4.4" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:129 +#, no-wrap +msgid "generic interfaces" +msgstr "ÑнивеÑÑалÑнÑе инÑеÑÑейÑÑ" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:129 +#, no-wrap +msgid "4,782" +msgstr "4,782" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:130 +#, no-wrap +msgid "2.4" +msgstr "2.4" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:130 +#, no-wrap +msgid "interprocess communication" +msgstr "межпÑоÑеÑÑное взаимодейÑÑвие" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:130 +#, no-wrap +msgid "4,540" +msgstr "4,540" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:131 +#: documentation/content/en/books/design-44bsd/_index.adoc:136 +#, no-wrap +msgid "2.2" +msgstr "2.2" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:131 +#, no-wrap +msgid "terminal handling" +msgstr "ÑабоÑа Ñ ÑеÑминалом" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:131 +#, no-wrap +msgid "3,911" +msgstr "3,911" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:132 +#, no-wrap +msgid "1.9" +msgstr "1.9" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:132 +#: documentation/content/en/books/design-44bsd/_index.adoc:169 +#, no-wrap +msgid "virtual memory" +msgstr "ÐиÑÑÑалÑÐ½Ð°Ñ Ð¿Ð°Ð¼ÑÑÑ" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:132 +#, no-wrap +msgid "11,813" +msgstr "11,813" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:133 +#, no-wrap +msgid "5.8" +msgstr "5.8" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:133 +#, no-wrap +msgid "vnode management" +msgstr "ÑпÑавление vnode" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:133 +#, no-wrap +msgid "7,954" +msgstr "7,954" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:134 +#, no-wrap +msgid "3.9" +msgstr "3.9" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:134 +#, no-wrap +msgid "filesystem naming" +msgstr "имена в Ñайловой ÑиÑÑемÑ" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:134 +#, no-wrap +msgid "6,550" +msgstr "6,550" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:135 +#, no-wrap +msgid "3.2" +msgstr "3.2" + +#. type: Table +#: documentation/content/en/books/design-44bsd/_index.adoc:135 +#, no-wrap +msgid "fast filestore" +msgstr "бÑÑÑÑое Ñ ÑанилиÑе Ñайлов" + *** 3125 LINES SKIPPED ***