Մասնակցի քննարկում:MarSukiasyan/ավազարկղ
Ստեղծող | Bell Labs |
---|---|
Արտոնագիր | Lucent Public License Version 1.02 |
Զարգացման կարգավիճակ | Current |
Կայք | http://plan9.bell-labs.com/plan9/ |
Plan 9 from Bell Labs is a բաշխված օպերացիոն համակարգ է: Այն մշակվել է հիմնականում հետազոտական նպատակներով,որպես Unix-ի իրավահաջորդհաշվողական գիտությունների հետազոտությունների կենտրոն կողմից 1980-2002թվականներին: Plan 9-ը առավել ուշագրավ է բոլոր համակարգի ինտերֆեյսերում ներկայացնելու համար, ներառյալ դրա պահանջարկը ցանցային և օգտագործեղի ինտերֆեյսերում,չնայած ֆայլային համակարգը ավելին և քան մասնագիտացված ինտերֆեյսերը: Plan 9-ի նպատակն է ապահովել օգտվողներին անկախ աշխատանքային միջավայրեվ 9P արձանագրությունների (protocols) օգտագործնան միջեցեվ: Plan 9-ը շարունակում է օգտագործվել և զարգացվել օպերացիոն համակարգերի հետազոտողների կողմից:[1][2]
Bell Labs-ից Plan 9 անունը տեղեկանք է 1959-ի պաշտամունքային գիտություն նյութերի Z-movie Plan 9 from Outer Space.[3]
ՊԱՏՄՈւԹՅՈւՆ[խմբագրել կոդը]
Plan 9-ը փողարինեց Unix-ին Bell Labs-ում որպես կազմակերպության հիմնական հետազոտական հարթակ:Այն ուսումնասիրեց մի շարք փոփոխություններ սկզբնական Unix-ի մոդելում, որոնք նպաստում են համակարգի օգտագործմանը եւ ծրագրավորմանը,մասնաորապես բաշխված բազմա-օգտվողների միջավայրում:Սկզբում Plan 9-ը Bell Labs-ի ներքին ծրագիր էր : 1992-ին, Bell Labs-ը համալսարաններին տրամադրեց առաջին հրապարակային թողարկումը: 1995-ին, կոմերցիոներկրորդ թողարկման տարբերակը դարճավ հասանելի ամբողջ հասարակությանը: 1990ականների վերջին, Lucent Technologies-ը, ժառանգելով Bell Labs-ը, դադարեցրեց ծրագրում կոմերցիոն շահերի աջակցությունը: 2000 թվականին,ոչ կոմերցիոն երրորդ թեղարկումը բաշխվեց բաց աղբյուրի լիցենզիայով: Չորրորդ թողարկումը ազատ ծրագրային ապահովման լիցենզիայով տեղի ունեցավ 2002-ին:
Օգտվողի և զարգացման համայնքը, որը ներառում է նախկին և ներկա Bell Labs-ի անդամներին և Մասաչուսեթսի Տեխնոլոգիական Ինստիտուտ անձնակազմին, շարունակում է արտադրել չնչին օրական հաղորդագրություններ ISO պատկերների ճևով : Bell Labs-ը դեռ շարունակում է զարգանալ: [4]Զարգացման աղբյուրի ծառը հասանելի է 9P-ին և HTTP արձանագրություններին, և օգտագործվում է գոյություն ունեցող միացումները թարմացնելու համար:[5] Ի հավելումն ISO-ում ներառված ՕՀ-ի պաշտոնական բաղադրիչներին, Bell Labs-ը նաև արտաքնապես զարգացած ծրագրերի և գործիքների պահեստ է:
ԱԿՆԱՐԿ[խմբագրել կոդը]
Bell Labs-ի Plan 9-ը ի սկզբանե մշակվել է Bell Labs-ի հաշվողական գիտության հետազոտական կենտրոն անդամների կողմից, այն նույն խումբը,որը զարգացրեց նախնական UNIX-ը և C.[6] Plan 9-ի խումբը ի սկզբանե գլխավորում էր Ռոբ Պայքը, Ken Thompson, Դայվ Պրեստոնը և Պհիլ Վինտերբոթոմը հաշվողական տեխնիկայի հետազոտությունների վարչություն ղեկավար Դենիս Ռիտչի աջակցությամբ: Տարիներ շարունակ շատ մշակողները նպաստել են ծրագրին, ներառյալ Բրիան Կերիգանը, Թոմ Դաֆը, Բրյուս Էլիսը, Ստիվ Սիմօնը և այլոք: [7] Plan 9-ը նախագծված է ժամանակակից բաշխված միջավայրերի համար: Սկզբում նախատեսված էր լինել ցանցային օպերացիոն համակարգ:Ի տարբերություն UNIX-ի այն ունի ներկառուցված գրաֆիկա,որն ավելի ուշ այս հատկությունները ավելացրեց նախագծում: Plan 9-ը չի դարճել այնքան ճանաչված ինչպես Unix-ը,բաըց այն ունի զարգացնողների լայն զանգված: [փա՞ստ]
Plan 9-ը ունի բաշխված ճարտարապետություն: Այն կարող է տեղադրվել և օգտագործվել միայն մեկ ինքնապարփակ ծրագրում, բայց նաև ունի ՕՀ-ի գործառնական բաղադրիչները առանձին ապարատային հարթակների միջև բաժանելու կարողություն: Տիպիկ Plan 9-ի ներբեռնման ժամանակ օգտագործողներն աշխատում են թեթևքաշային տերմինալների վրա` գործարկելով rio GUI-ն (օգտագործողի գրաֆիկական ինտերֆեյս) և ցանցի միջոցով միանում են CPU սերվերներին, որը գործարկում է ինտենսիվ հաշվարկման գործընթացները մշտական տվյալների պահպանումով, ապահովելով լրացուցիչ մուտքեր, որոնք կատարում են ֆայլայի սերվերների և արխիվայի պահեստի դեր: Ներկայումս մատչելի սեղանի համակարգիչները կարող են նաև վերստեղծել այդ ներքին ճարտարապետությունը` օգտագործելով բազմաթիվ վիրտուալ մեքենաներ:
ՆԱԽԱԳԾԱՅԻՆ ՀԱՍԿԱՑՈՒԹՅՈՒՆՆԵՐ[խմբագրել կոդը]
Plan 9-ի դիզայներները հետաքրքրված էրն մի շարք նպատակներով, որոնք նաման էին միջուկի (microkernel) նպատակներին, բայց դրանց հասնելու համար ընտրեցին ուրիշ ճարտարապետության և դիզայնի մանրամասներ: Plan 9-ի մախագծային նպատակները ներառում էին.
- Ֆայլային համակարգի վրա հիմնված սարքեր. Բոլոր ռեսուրսները հիերարխիկ ֆայլային համակարգում ներկայացված են հայնգույցներով:
- Անվանատարածքներ: Ցանցի դիմելաճևը եզակի,կապակցված անվանատարածք է , որ հանդես է գալիս որպես հիերարխիկ ֆայլային համակարգ, բայց կարող է ներկայացնել տեղական կամ հեռավոր ֆիզիկապես առանձնացված ռեսուրսներ: Յուրաքանչյուր գործընթացի անվանատարածք կարող է ինքնուրույն կառուցվել, և օգտագործողը կարող է միաժամանակ աշխատել դիմումների հետ տարասեռ անվանատարածքներով:
- Ստանդարտ կապի արձանագրություն: Ստանդարտ արձանագրությունը, 9P անվանումով,օգտագործվում է ինչպես տեղական, այնպես էլ հեռավոր ռեսուրսները մուտքագրելու համար:
ՄԻԱՍՆԱԿԱՆ ՄՈՒՏՔԻ/ԵԼՔԻ ՄՈԴԵԼ[խմբագրել կոդը]
Նախքան Unix-ը շատ օպերացիոն համակարգեր ունեին տարբեր տեսակի սարքավորումներից օգտվելու տարբեր մեխանիզմներ: Օրինակ,սկավառակատարըմուտքագրելու կիրառական ծրագրերի ինտերֆեյսը (API,ԿԾԻ) տարբերվում էր ԿԾԻ-ից, որը օգտագործվում էր տվյալներ ուղարկելու և ստանալու համար, կամ տպիչին միանալու համար օգտագործվող ԿԾԻ-ից:
Unix-ը փորձեց հեռացնել այդ տարբերություններ կատարելով բոլոր մուտքի / ելքի գործողությունները սկավառակային ինդեքսների միջոցով: Յուրաքանչյուր սարքի դրայվերից պահանջվում է աջակցել իմաստալից կարդալ և գրել գործունեություններին որպես հսկողության միջոց: Սա թույլ է տալիս օգտագործողներին օժանդակ ծրագրերով մի սաքից մյուսին ուղարկել տվյալներ, ինչպիսիք են cp-ն և dd-ն, առանց տեղյակ լինելու իրականացման մանրամասներից: Ինչևէ, այն ժամանակ, շատ հիմնական հասկացություններ (ինչպիսիք են գործընթացի վիճակի վերահսկողությունը) ներառված չէին ֆայլային համակարգում: Քանի որ նոր հատկանիշները, ինչպիսիք են Berkeley sockets-ը և X Window System-ը, զարգացվեցին, դրանք իրականացվեցին ֆայլային համակարգից դուրս: Նոր ապարատային առանձնահատկությունները (ինչպիսին է CD-ն ծրագրից հեռացնելու կարողությունը) նաև խրախուսում են հատուկ-ապարատային վերահսկման մեխանիզմների օգտագործումը, ինչպես ioctl համակարգային կանչը:
Plan 9-ի հետազոտական ծրագիրը մերժեց այդ տարբեր մոտեցումները և վերադարճավ կենտրոնական ֆայլային համակարգի տեսակետին: Plan 9-ի յուրաքանչյուր ծրագիր դիտարկում է բոլոր մատչելի ռեսուրսները, ներառյալ ցանցային և օգտագործողի ինտերֆեյսի ռեսեուրսները, ինչպիսին է ներբեռնվող պատուհանը, որպես հիերարխիկ ֆայլային համակարգի մաս, այլ ոչ թե մասնագիտական ինտերֆեյս:[4]
ՖԱՅԼԱՅԻՆ ՀԱՄԱԿԱՐԳ, ՖԱՅԼԵՐ և ԱՆՎԱՆՈՒՄՆԵՐ[խմբագրել կոդը]
Plan 9-ը ընդլայնեց համակարգը ֆայլից դեպի "անվանում", այսինքն, եզակի ճանապարհ դեպի ցանկացած օբյեկտ,լինի դա ֆայլ, էկրան, գործածող, թե համակարգիչ: Բոլորը ղեկավարվում են օգտագործելով արդեն գոյություն ունեցող Unix-ի չափանիշները, բայց ընդլայնված է այնպես, որ ցանկացած օբյեկտ կարող է անվանվել և հասցեագրվել միարժեքորեն: Սա նման է World Wide Web-ում օգտագործվող Ռեսուրսների միարժեք նույնացման (Uniform Resource Identifier) (URI) գաղափարին: Unix-ում սարքերը, ինչպիսիք են տպիչները, ներկայացված էին անուններով, որոնք օգտագործելուվ /dev
-ում ծրագրային ապահովման փոխակերպիչներ, բացի ապարատին ամրեցված այդ հասցեագրված եզակի սարքեր , և չի հասցեավորում ցանցային սարքավորումները: Plan 9-ի համաճայն բոլոր տպիչները վիտուալացված են որպես ֆայլեր, և կարող են օգտագործվել ցանցի ցանկացած աշխատանքային կարգավիճակում:
Plan 9-ի մեկ այլ նորամուծությունը օգտագործողի համար նույն "իրական" օբյեկտի տարբեր անվանումներ ունենալու հնարավորությունն էր: Յուրաքանչյուր օգտվող կարող է ստեղծել անհատականացված մի միջավայր տարբեր առարկաներ իրենց անվանատարածք մտցնելը հավաքագրելու միջոցով: Unix-ը ուներ նմանատիպ գաղափար,որտեղ օգտվողները արտոնություններ էին ստանում այլ օգտվողների կողմից պատճենահանվելու միջոցով,[պարզաբանել] բայց Plan 9-ը տարածվեց է այդ բոլոր օբյեկտների վրա: Օգտվողները հեշտությամբ կարող են ինքնուրույն բազմացնել "նմանակներին", փոփոխել դրանք, և ապա դրանք հեռացնել, առանց ազդելու դրանց ստեղծնամ համար օգտագործված ռեսուրսների վրա:.
ՄԻԱՍՆԱԿԱՆ ԴԻՐԵԿՏՈՐԻԱՆԵՐ[խմբագրել կոդը]
Unix-ը ֆայլային համակարգերին թույլ է տալիս կառուցվել բաշխված ռեսուրսների հիման վրա` օգտագործելով այնպիսի հասկացություններ, ինչպիսիք են հղումները և ֆայլային համակարգի մենտաժումները: Այս առանձնահատկություններ թաքցնում են իրական դիրեկտորիան;եթե ինչ որ մեկը "ցանց" անունով դիրեկտորիայում մոնտաժում է նոր ֆայլային համակարգ, այդ մեկը այլևս չի կարող օգտվել իր նախորդ պարունակություններից մինչև որ գործողությունը չեղյալ համարվի:
Plan 9-ը ներկայացրեց միասնական դիրեկտորիաների գաղափարը, որը թափանցիկ կերպով միավորում է ռեսուրսները մի քանի դիրեկտորաներից մեկ միակ ճանապարհով: Հարմար անվանակոչության կոնվենցիաների օգտագործումը պարզեցնում է ծրագրավորումը և օգտագործողի միջավայրը: Օրինակ, shell-ը իրականացնում բոլոր հրամանները(բացառությամբ /
սկսվողներից) միայն /bin
-ից, փոխարեն ունենալու որոնում PATH
ցանկից,ինչպես մյուս օպերացիոն համակարգերում:
Շատ Linux բաշխման live CDներ իրականացնում են այդ հնարավորությունների սահմանափակ ճևով, հիմնված միասնական ֆայլային համակարգի վրա,ի տարբերություն միասնական դիրեկտորիաների:
/proc=[խմբագրել կոդը]
/Proc
դիրեկտորիան, որը պարունակում է գրառումներ բոլոր առաջադրված գործընթացների համար, ցույց է տալիս, թե ինչպես են այդ հատկանիշները միասին աշխատում
ավելի մեծ ամբողջություն արտադրելու համար: Այս հատուկ ֆայլային համակարգը առաջին անգամ հայտնվեց Version 8 Unix-ում և ավելի ուշ տեղափոխվեց SVR4: Plan 9-ը իրականացրեց գործընթացի ֆայլային համակարգը, բայց ավելի առաջ գնաց քան V8-ը: V8-ի գործընթացի ֆայլային համակարգը իրականացրեց մի ֆայլ մեկ գործընթացում: Plan 9-ը այդ գործառույթները ապահովելու համար ստեղծեց առանձին ֆայլերի աստիճանավորում, և /proc-ը դարձրեց ֆայլային համակարգի իրական անդամ: Այս մոտեցումը ընդունվեց նաև Linux-ի կողմից և այլ ժամանակակից Unix-ի նման օպերացիոն համակարգեր կողմից: Գործընթացները /proc
-ում հայտնվում են որպես անվանավորված օբյեկտներ (ենթադիրեկտորիաներ տվյալների և վերահսկողության ֆայլերով), և սովորական I/O օգտագործվում է դրանք հետազոտելու և վերահսկելու համար: Օգտվողը ստիպված չի օգտագործել մասնագիտացված համակարգային կոչեր գործընթացների հետ փոխազդելու համար; ավելին, նա կարող է օգտագործել ընդհանուր գործիքները, ինչպիսիք են ` ls
: Այլ համակարգային ռեսուրսները նույնպես ինտեգրված են հիերարխիկ անվանատարածքների մե:
Օգտագործողները կարող են նաև հեռադիր սերվերներից դիրեկտորիանրը մենտաժել /proc
(և այլ հատուկ ֆայլային համակարգեր) անվանատարածքների մեջ հեռադիր սերվերներից, փոխազդելեվ նրանց հետ, ասես նրանք տեղական են: Արդյունքը բաշխված համակարգչային միջավայրն է հավաքված առանձին մեքենաներից - տերմինալներից, որոնք տեղադրված են օգտագործողների գրասեղանին, ֆայլային սերվերները,որ պահեստավորում են մշտական տվյալները, և այլ սերվերներ,որոնք ապահովում են մշտական տվյալները, օգտվողի իսկության ստուգումը և ցանցային մուտքերը, օգտագործելով առկա բոլոր աստիճանական դիրեկտորիաները/ համակարգչից օգտվողներից շատերին ծանոթ անվանային համակարգերը: Օգտվողը կարող է "կառուցել" համակարգ հավաքելով դիրեկտորիաները ֆայլային սերվերներում, դիմումների գործարկումը սերվերներում և տպիչները ցանցում, և հետո կապակցել նրանց միասին:
/net[խմբագրել կոդը]
Plan 9-ը չունի կապի արձանագրությունների բազմության կամ սարքերի ղեկավարման ինտերֆեյսերի համար համակարգային կանչեր: Օրինակ /net
-ը API է բոլոր TCP/IP-ների համար, և դա կարող է օգտագործվել անգամ ինտերպրետացվող ծրագրերի և միջավայրային գործիքների հետ, գրելով տվյալներ ֆայլերի գրել-կարդալու կապը վերահսկելու համար: Համապատասխան ենթադիրեկտորիաները, օրինակ /net/tcp
և /net/udp
, օգտագործվում են համապատասխան արձանագրությունները միացնելու համար: Դուք կարող եք իրականացնել NAT մոնտաժելով /net
-ը պարագծային մեքենայից հանրային IP-ով, մինչ դրան միանալը անձնական IP հասցեներին ներքին ցանցով, օգտագործելով Plan 9-ի 9P արձանագրությունը ներքին ցանցում: Կամ կարող եք իրականացնել վիրտուալ մասնավոր ցանց (VPN) մոնտաժելով /net
դիրեկտորիան հեռավոր մուտքերից, օգտագործելով ապահովված 9P ամբողջ հասարակական Internet-ում:
Սա /net
-ում միասնական (բուրգ) դրիեկտորիաների օգտագործման օրինակ է: նման OOP-ի ժառանգության, դուք կարող եք վերցնել մեկ (գուցե հեռավոր) /special
դիրեկտորիա և դռա գագաթին կապել մեկ այլ տեղական հատուկ դրիեկտորա, ավելացնելով որոշ նոր վերահսկոզ ֆայլեր և թաքցնելով մյուսները: Հիմա միասնական դրիեկտորիան նման է իրական ծնողի երեղայի օբյակտին: Բնօրինակի ֆունկցիոնալությունը կարող է լինել մասամբ ձևափոխված: Քննարկենք /net
ֆայլային համակարգը: Եթե դուք փոփոխում կամ թաքցնում եք նրա /net/udp
ենթադիրեկտորիան դուք կարող եք տեղական զտիչ գործընթացներով վերահսկել կամ երկարացնել UDP ինտերֆայսը, դեռ թողնելով իրական /net/tcp
-ին աշխատել անխափան, գուցե մի հեռավոր մեքենայում: Նշենք, որ անվանատարածքը մեկ գործընթացանի է: եթե դուք անհուսալի դիմումին տալիս եք սահմանափակ, modified /net
միասնական դրիեկտորիա, դուք սահմանափակում եք նրա մուտք դեպի ցանց:
Այս ամենը հեշտացնում է համատեղել տարբեր լեզուներով և տարբեր համակարգերեվ գրված "օբյեկտները" կամ ֆայլային համակարգերը, օգտագործելով ստանդարտ անվանակոչություն, մուտքի վերահսկողություն և ֆայլային համակարգի պաշտպանություն, հիմնականում շտկված ծրագրավորողի կողմից:
ՑԱՆՑԱՅԻՆ և ԲԱՇԽՎԱԾ ՀԱՇԱՐԿՈՒՄ[խմբագրել կոդը]
Plan 9-ը հիմնված է UNIX-ի վրա, բայց զարգացվել է, որ ցույց տա հաշվողական համակարգի կենտրոնական գործառույթների հաղորդակցություն գաղափարը: Համակարգի բոլոր ռեսուրսները անվանավորված և մուտքագրված են այնպես, ասես նրանք ֆայլեր են; և բաշխված համակարգի բազմաթիվ դիտումները կարող են սանմանվել դինամիկ ձևով համապատասխան մեքենայում յուրաքանչյուր գործարկվող ծրագրի համար: Այս մոտեցումը բարելավում է դիմումի ձևի միասնականությունը և մոդուլայնությունը սերվերներին օգնելու միջոցով, որոնք ունեն ցանկացած տեղեկատվություն, որը հայտնում են օգտագործողներին և դիմումներ, որոնք նման են սովորական ֆայլերի հավաքածուներին:
Plan 9-ի ցանցի թափանցիկությանը աջակցելու բանալին նոր ցածր մակարդակ ցանցային արձանագրություն էր ինչպես 9P-ն: 9P արձանագրությունը և նրա իրականացունը միացնում է անվանավորված ցանցային օբյեկտները և ֆայլանման պաշտպանված համակարգի ինտերֆեյսները: 9P-ն արագ բայտ - ուղղվածությամբ (այլ ոչ թե բլոկային ուղղվածությամբ) բաշխված ֆայլային համակարգ է,որը կարող է վիրտուալացնել ցանկացած,ոչ միայն նրանցից, որոնք պաշտպանված են հեռավոր մեքենաներում NFS սերվերի կողմից: Արձանագրությունը օգտագերծվում է գործընթացներ առաջարկելու և գործընթացների, ծրագրերի, տվյալների հետ հաղորդակցվելու համար,ներառյալ օգտագործողի և ցանցի ինտերֆեյսները: 4-րդ հրատարակությունում այն ձևափոխված եւ վերանվանված 9P2000 էր:
Unicode[խմբագրել կոդը]
Plan 9-ը օգտագործում է Unicode. UTF-8 հնարել է Կեն Թոմպսենը. այն կարող է օգտագործվել Plan 9-ում որպես տեղական կոդավորում, և ամբողջ համակարգը ընդհանուր օգտագործման համար փոխակերպվել է 1992-ին:[8]
ԻՐԱԿԱՆԱՑՈՒՄ[խմբագրել կոդը]
Կատարման հաստատված ժամանակամիջոցի միջավայրը գոյություն ունի x86 ճարտարապետություն համար, և Plan 9-ը տեղադրվել է MIPS, DEC Alpha, SPARC, PowerPC, ARM և այլ ապարատային հարթակների վրա: Համակարգը գրվել է ANSI C հետ համագործակցությամբ: Մի քանի ծրագրեր ի սկզբանե գրված էին մի լեզվով,որը կոչվում էր Alef,բայց հետագայում վերագրվել է C-ով: Plan 9-ը կարող է աջակցել POSIX-ի ծրագրերին և կարեղ է մրցել Berkeley socket interface-ի հետ ANSI/POSIX Environment APE-ի միջոցով: Վերջերս,Կաղապար:When linuxemu անունով նոր ծրագրիը զարգացվեց և կարող է օգտագործվել Linux կրկնակի ֆայլերը գործարկելու համար; սակայն դա դեռևս առաջընթացի փուլում է:
Plan 9-ը տեղադրվել IBM Blue Gene/L Supercomputer-ի վրա:[9]
ԱԶԴԵՑԵՒԹՅՈՒՆ[խմբագրել կոդը]
Plan 9-ը ցույց տվեց,որ Unix-ի հիմնական գաղափարը – որ յուրաքանչյուր համակարգի ինտերֆեյսը կարող է ներկայացված լինել ֆայլային խմբերով – կարող է հաջողությամբ իրականացվել ժամանակակից բաշխված համակարգերում: Plan 9-ի որոշ առանձնահատկություններ,ինչպես UTF-8 նիշերի կոդավորումը Unicode-ով, իրականացվել այլ օպերացիոն համակարգերում: Unix-ի նման օպերացիոն համակարգերը , ինչպիսին է Linux-ը իրականացրել է 9P-ն, Plan 9-ի ֆայլային համակարգը և rfork-ի նման համակարգային կանչերի սահմանափակ ձևերը: Որպես լրացում, Plan 9 from User Space-ում Plan 9-ի մի քանի դիմումներ եւ գործիքներ, ներառյալ rc միջավայրը, տեղադրվել են Unix ու Linux համակարգերում,և ձեռք են բերել ճանաչման որոշակի մակարդակ?: Glendix-ը նախագիծ է,որը ձգտում է փոխարինել GNU օպերացիոն համակարգի ծրագրերը, որոնք շրջապատում են Linux-ի միջուկը Plan 9-ը օպերացիոն համակարգի ծրագրերով , կամ փոխարինել Plan 9-ի միջուկը Linux-ի միջուկով:
Ինչևէ, Plan 9-ը իր ճանաչվածությամբ երբեք չի հասել Unix-ին ,և հիմնականում հետազոտության գործիք էր: Plan 9-ը քննադատվել է որպես "օպերացիոն համակարգեր հետազոտություն հիմնականում հետաքրքիր հոդվածներ արտադրող սարքը :"[10] Էրիկ Ս. Ռայմոնդը իր Unix-ի ծրագրավորման արվեստ գրքում մտածեց Plan 9-ում բացակայությունների ընդունման մասին.
Plan 9-ը պարզապես ձախողվեց այն պատճառով, որ այն չէր կարող իր նախահայր Unix-ի հետ մրցել: Համեմատած Plan 9-ի հետ, Unix-ի ճռռում ու շառաչում է և ունի ակնհայտ ժանգոտված կետեր,բայց այն իր դիրքը պահելու համար կատարում է իրաշխատանքը շատ լավ: Սա դաս է հավակնոտ համակարգի ճարտարապետների համար; լավ որոշման ամենավտանգավոր թշնամին գոյություն ունեցող կոդային բազան է,որը բավականին լավն է: .[10]
Plan 9-ի այլ քննադատությունները ներառում են հիմնականում Unix-ի քննադատությունները,որտեղ Plan 9-ը համարվում է "ավելի վատը ավելի լավ է" օպերացիոն համակարգի նախագծման դպրոցի հետևորդ: Ընդհանուր քննադատությունները ներառում են "լեհական" և Plan 9-ի պատուհանային համակարգի հարաբերական բացակայությունը:[11] and Plan 9's lack of maturity as a commercial-grade body of software.[12]
Plan 9 կողմնակիցները և մշակողները պնդում են, որ խնդիրները խոչընդոտում են դրա լուծման ընտրությանը, և նրա իրական նպատակները որպես բաշխված համակարգ,զարգացման միջավայր և հետազոտական հարթակ հանդիպել են, և որ այն վայելում է չափավոր, բայց աճող ժողովրդականություն: Inferno,չնայած նրա հնարավորություններին, եղել է մեքենա, որը բերել է Plan 9-ի տեխնոլոգիաները այլ համակարգեր որպես հյուրընկալված տարասեռ հաշվողական վանդակ:[13][14][15][16]
ԼԻՑԵՆԶԻԱ[խմբագրել կոդը]
Լրիվ աղբյուրի կոդը ազատորեն հասանելի է Lucent Public License 1.02-ով, և համարվում է բաց աղբյուր բաց աղբյուրի նախաձեռնության (OSI) և ազատ ծրագրային ապահովման կողմից Free Software Foundation (FSF)-ի միջոցով:Ինչևէ, այն համատեղելի է GNU Համընդհանուր հանրային արտոնագրի հետ:Այն անցել է Debian Free Software Guidelines-ը:
See also[խմբագրել կոդը]
Standard Plan 9 utilities[խմբագրել կոդը]
- rc - the Plan 9 shell
- sam - a text editor
- acme - a user interface for programmers
- plumber - interprocess messaging
- mk - a tool for building software, analogous to the traditional Unix make utility
- rio - the new Plan 9 windowing system
- 8½ - the old Plan 9 windowing system
- Fossil and Venti - the new archival file system and permanent data store
Implementation artifacts[խմբագրել կոդը]
- 9P (or Styx) - a filesystem protocol
- rendezvous - a basic synchronization mechanism
- Brazil - what became the Fourth Edition of Plan 9
Influence[խմբագրել կոդը]
- Plan 9 from User Space - a port of many Plan 9 libraries and applications to Unix-like operating systems
- Inferno - distributed operating system following up Plan 9, working on top of another OS[17]
- 9wm - an X window manager that clones the Plan 9 interface
- wmii - an X window manager that uses a file system-like interface based on 9P
- Plan B - operating system designed to work in distributed environments where the set of available resources is different at different points in time. Implemented as a set of user programs to run on top of Plan 9 from Bell Labs.
References[խմբագրել կոդը]
- ↑ Plan 9 from the People's Front of cat-v.org (9front), NineTimes, Վերցված է Նոյեմբերի 11, 2011 -ին
- ↑ 9atom, Վերցված է Նոյեմբերի 11, 2011 -ին
- ↑ «The Art of UNIX Programming». Վերցված է 2007-05-07-ին.
{{cite web}}
:|first=
missing|last=
(օգնություն) - ↑ 4,0 4,1 Կաղապար:Cite web year=2006 Քաղվածելու սխալ՝ Սխալ
<ref>
թեգ. «Availability» անվանումը սահմանվել է մի քանի անգամ, սակայն տարբեր բովանդակությամբ: - ↑ «Staying up to date». Plan 9 community. 2006. Վերցված է April 27, 2006-ին.
- ↑ «From the inventors of UNIX system comes Plan 9 from Bell Labs». Lucent Technologies. 1995. Արխիվացված է օրիգինալից February 9, 2006-ին. Վերցված է April 2, 2006-ին.
- ↑ McIlroy, Doug (1995). «Preface to the Second (1995) Edition». Lucent Technologies. Վերցված է April 2, 2006-ին.
- ↑ Pike, Rob (2003). «UTF-8 History». Վերցված է April 27, 2006-ին.
- ↑ Plan9 BG Presentation
- ↑ 10,0 10,1 Raymond, Eric S. «Plan 9: The Way the Future Was». Վերցված է March 28, 2006-ին.
- ↑ «Interview with Dennis Ritchie, response #25». Վերցված է 2006-09-09-ին.
- ↑ «Interview with Dennis Ritchie, response #23». Վերցված է 2006-09-10-ին.
- ↑ «9grid (Plan 9 wiki)». Plan 9 wiki. 2006. Վերցված է March 28, 2006-ին.
- ↑ «Press Release: Vita Nuova Supplies Inferno Grid to Evotec OAI» (PDF). Vita Nuova Holdings Limted. 2004. Վերցված է March 28, 2006-ին.
- ↑ «Press Release: Rutgers University Libraries Install Inferno Data Grid» (PDF). Vita Nuova Holdings Limited. 2004. Վերցված է March 28, 2006-ին.
- ↑ «Press Release: The University of York Department of Biology install Vita Nuova's Inferno Data Grid» (PDF). Vita Nuova Holdings Limited. 2004. Վերցված է March 28, 2006-ին.
- ↑ Inferno's Download Contents
External links[խմբագրել կոդը]
Bell Labs[խմբագրել կոդը]
- Plan 9 homepage
- Plan 9 Overview
- The papers from 4th edition
- Other papers and documents
- README for 2nd Edition by Brian W. Kernighan
- Browsable full source code
- Plan 9 Wiki - powered by wikifs
- Plan 9 documentation index
- Plan 9 manual pages
- Plan 9 download
- Installation notes
- Plan 9 FAQ
- Plan 9 projects in the GSoC
- Plan 9, an incomplete list of organizations using plan 9 and inferno
Forks and community efforts[խմբագրել կոդը]
- 9Atom daily mirror with 9Atom (augmented system with additional drivers)
- 9Front Plan9 fork incorporating additional drivers, applications and file systems
- LP49 A Plan9 system implemented on top of the L4 microkernel.
- PlanB A Plan9 extension
- Octupus A Plan9 extension
Lectures[խմբագրել կոդը]
- Slides - Video from FOSDEM 2006
- Plan 9 is not dead at FAST-OS 2005
Other native and virtual machines[խմբագրել կոդը]
native[խմբագրել կոդը]
- Plan 9 in a boxed version by Vita Nuova Holdings
virtual[խմբագրել կոդը]
- Plan 9 as a Qemu image
- Plan 9 as a VMware VMPlayer virtual machine
- Plan 9 as a Vx32 Extension Environment binary image
Other resources[խմբագրել կոդը]
- 9fans, the Plan 9 mailing list hosted by http://9fans.net
- Ninetimes Plan 9, Inferno, Unix, and Bell Labs operating systems news
- #plan9, the Plan 9 IRC channel hosted by freenode
- "Plan 9: The Way the Future Was" from The Art of Unix Programming by Eric S. Raymond
- Reinventing UNIX: An introduction to the Plan 9 operating system, by Hancock, B., Giarlo, M.J., & Triggs, J. A., published in Library Hi Tech, 21(4), 471-476.
- Introduction to OS abstractions using Plan 9 from Bell Labs, by Francisco J Ballesteros
- Das Netzbetriebssystem Plan 9., 1999, ISBN 3-446-18881-9 by Hans-Peter Bischof, Gunter Imeyer, Bernhard Wellhöfer (born as Kühl), Axel-Tobias Schreiner. The book is out of print, but available for free at the print-on-demand service provider Lulu.com.
Կաղապար:Unix-like Կաղապար:Rob Pike navbox
cs:Plan 9 from Bell Labs de:Plan 9 (Betriebssystem) es:Plan 9 from Bell Labs eo:Plano 9 fr:Plan 9 from Bell Labs gl:Plan 9 ko:플랜 9 (운영 체제) it:Plan 9 he:Plan 9 from Bell Labs hy:Plan 9 from Bell Labs lt:Plan 9 hu:Plan 9 from Bell Labs nl:Plan 9 ja:Plan 9 no:Plan 9 pl:Plan 9 pt:Plan 9 from Bell Labs ru:Plan 9 simple:Plan 9 from Bell Labs sv:Plan 9 th:Plan 9 uk:Plan 9 zh:貝爾實驗室九號計畫