Кіріспе

Unix қабығы

PWB қабығы (Mashey қабығы деп те аталады) Unix жүйесі үшін жасалған қабық болды.

Тарих

PWB қабығы – Thompson қабығының өзгертілген (және көбінесе жоғары үйлесімділік принципімен шектелген) нұсқасы болды, ол бағдарламалау үшін қолдану ыңғайлылығын арттыруға бағытталған қосымша мүмкіндіктермен жабдықталған. Оны Джон Маши және басқа да мамандар (Дик Хейт, Алан Глассер) күтіп бақты. PWB/UNIX 1973 жылдың қазан айының ортасында Research Unix 4-ші нұсқасымен бірге пайда болды және PWB бөлімі Research Unix-тегі өзгерістерді қадағалап, жаңа мүмкіндіктер қосып, келесі бірнеше жыл бойы үнемі жаңартылып тұрды. PWB қабығы 1975 жылдың ортасында жарық көрді және Unix негізіндегі PWB/UNIX 6-шы нұсқасы арқылы қолжетімді болды. Unix-тің 7-ші нұсқасында (1979) PWB қабығы Bourne қабығымен алмастырылды. PWB қабығы шамамен 1975–78 жылдар аралығында PWB/UNIX үшін стандартты қабық болды, бірақ Research Unix-тің ешбір нұсқасында жұмыс істемеді, себебі оған кіру есімін, кіру каталогын және TTY-ны орнатуға мүмкіндік беретін жаңа жүйелік шақыру қажет болды.

Ерекше белгілері

PWB қабығында кейінірек көптеген қабықтарда сақталған бірнеше мүмкіндіктер енгізілді. және командалары қабықтың ішкі бөлігіне көшірілді және , және конструкциялары қосылды, сондай-ақ үзілістерді назардан тыс қалдыру немесе оларды тазалау үшін ұстап алу мүмкіндігі пайда болды. Қарапайым айнымалыларды қолдануға болады, бірақ олардың атаулары бір әріппен шектелген, ал кейбір әріптер арнайы мақсаттар үшін резервтелген, олардың кейбіреулері 7 нұсқадан бастап барлық Unix жүйелерінде кездесетін орта айнымалыларының алғабасы болып табылады. Мысалы, айнымалысы жол атауларын қатаң түрде кодтаудан сақтау үшін қолданылатын ата-бабасы болып табылады. айнымалысы пайдаланушыларға өздері таңдаған каталогтарда командаларды іздеуге мүмкіндік беретін ата-бабасы. Көптеген UNIX жүйелерінен айырмашылығы, бастапқы PWB/UNIX компьютерлік орталығы бірнеше бағдарламалау топтарымен бөлісілді, олар /bin немесе /usr/bin мазмұнын өзгерте алмады, бірақ өздерінің ортақ командалар жиынтығын жасағысы келді. Сонымен қатар, қабықтың команда іздеуі қабық процедураларын екілік командалар сияқты шақыруға мүмкіндік беру үшін жақсартылды, яғни егер қабық екілік емес файлды орындалатын деп таныса, ол басқа қабық мысалын іске қосып, сол файлды қабық сценарийі ретінде оқиды. Осылайша, адамдар тек қана емес, сондай-ақ функция түрінде де командаларды орындай алады. Бұл мінез-құлық функциясы ретінде жинақталды, ол кез келген бағдарламаға қабық сияқты командаларды шақыруға мүмкіндік беретін ата-бабасы. Бұрын қабық сценарийіне аргументтерді анықтау үшін қолданылған символ, енді айнымалының мәнін алу үшін қолданылады және қос тырнақшалар ішіндегі жолға айнымалының мәнін қою үшін пайдаланылуы мүмкін. (Бұл мүмкіндік кейінірек Perl және PHP бағдарламалау тілдерінде де пайда болды.)

Ұрпақтар

Бұл мүмкіндіктер Томпсон қабығының кемшіліктерін жоластыра алмады, сондықтан Стивен Борн жаңа қабықты бастапқы кодтан жаңадан жазды. Бұл Борн қабығы Томпсон және PWB қабықтарымен үйлесімді болмады, бірақ PWB қабығының көптеген мүмкіндіктеріне баламаларын қамтыды, алайда бұл мүмкіндіктер әртүрлі қатысушылардың көптеген талқылауларынан кейін, біртіндеп емес, нөлден жасалды. Атап айтқанда, қоршаған орта айнымалылары және олармен байланысты механизмдер Стивен Борн, Джон Маши және Деннис Ричи тарапынан бұрынғы, шектеулі мүмкіндіктерді алмастыру үшін арналған жалпы құрал ретінде әзірленді. Unix 7 нұсқасында Борн қабығы стандартты қабық ретінде қабылданғаннан кейін PWB қабығының қолданылуы тоқтатылды, бірақ бір кезде Mashey қабық бағдарламашылары үшін «Bourne Shell бағдарламалау» деп аталатын Bell Labs-тің ішкі курсы болды. Борн қабығының жарияланбас бұрын әзірленген C қабығы да PWB қабығының кейбір мүмкіндіктерін мұралады.