Margaret Hamilton: Ծրագրային ճարտարագիտության առաջամարտիկը NASA-ի Apollo առաքելությունում

Tsovinar Gevorgyan
Picsart Academy
Published in
3 min readJun 15, 2024

Ամերիկացի գիտնական, համակարգային ինժեներ և կին բիզնեսմեն Margaret Hamilton-ի (ծնվ. 1936, օգոստոսի 17, ԱՄՆ, Պաոլի) անվան հետ են կապում «Ծրագրային ապահովման մշակում» տերմինի առաջացումը։

Hamilton-ի ճանապարհորդությունը դեպի հաշվողական աշխարհ սկսվեց MIT-ում նրա աշխատանքով, որտեղ նա իր ներդրումն ունեցավ Semi-Automatic Ground Environment (SAGE) նախագծում՝ մշակելով ծրագրակազմ ռազմական օգտագործման համար: Այնուամենայնիվ, Apollo նախագծին նրա մասնակցությունն էր, որ դարձրեց նրա ժառանգությունը այդքան արժեքավոր:

NASA-ի Apollo ծրագիրը շրջադարձային նախաձեռնություն էր՝ հասնելու նախագահ Ջոն Քենեդիի նպատակին, այն էր՝ մարդու վայրէջքը լուսնի վրա և նրա ապահով վերադարձը Երկիր: Այս առաքելության հաջողության առանցքը եղել է Apollo Guidance Computer-ը (AGC), որը մշակվել է MIT գործիքավորման լաբորատորիայի կողմից:

Margaret Hamilton։ NASA, 1989
Margaret Hamilton։ NASA, 1989

Hamilton-ը դարձավ Apollo թռիչքային ծրագրակազմի առաջատար ծրագրավորողը: Նրա թիմին հանձնարարվել էր գրել և փորձարկել Apollo տիեզերանավի թռիչքի ծրագրակազմը, ներառյալ Command-ը և Lunar Modules-ը:

Hamilton-ի աշխատանքի կարևորության մասին է վկայում Apollo 11 առաքելության ամենակարևոր պահերից մեկը. երեք րոպե առաջ՝ լուսնային վայրէջի մոդուլի մինչ լուսնին հասնելը մի ​​քանի համակարգչային ահազանգեր գործարկվեցին: Hamilton-ի նորարարական «առաջնահերթության ցուցադրման» համակարգը տիեզերագնացներին զգուշացրեց կարևոր սխալների մասին՝ թույլ տալով նրանց մի քանի վայրկյանի ընթացքում որոշումներ կայացնել և, ի վերջո, կանխել վայրէջքի հնարավոր ընդհատումը:

Համակարգիչը ծանրաբեռնված էր մուտքային տվյալներով, քանի որ ռադիոլոկացիոն համակարգը (վայրէջք կատարելու համար ոչ պարտադիր) թարմացվեց մի հաշվիչով, որը հափշտակում էր համակարգչային ցիկլերը։ Իր կայուն ճարտարապետության շնորհիվ համակարգիչը կարողացավ շարունակել աշխատել, Apollo-ի ներսից պատրաստված ծրագրակազմը մշակվել էր ասինխրոն կատարման միջոցով, որպեսզի ավելի բարձր գերակայություն ունեցող (վայրէջքի համար կարևոր) խնդիրները կարողանան ընդհատել ցածր գերակայությամբ առաջադրանքները։ Անսարքությունը առաջացել էր սխալ ստուգիչ ցուցակի պատճառով։

Apollo նախագծում օգտագործված լեզուն և տեխնոլոգիան բեկումնային էին իրենց ժամանակի համար: Hamilton-ի թիմը մշակել է ծրագրակազմ՝ օգտագործելով assembly լեզուն և ներդրել սխալների հայտնաբերման և վերականգնման նորարարական տեխնիկա՝ ապահովելով տիեզերանավի համակարգերի հուսալիությունը:

Ավագ տեխնոլոգ Paul Curto-ն, ով Hamilton-ին առաջադրել է NASA-ի Տիեզերական Ակտի մրցանակի համար, Hamilton-ի աշխատանքն անվանել է «գերհուսալի ծրագրային ապահովման նախագծման հիմքը»:

Hamilton-ը Apollօ ծրագրակազմի վրա աշխատելու ժամանակ

Հետագայում Hamilton-ը միջադեպի մասին գրել է.

«Համակարգիչը (ավելի ճիշտ՝ դրա մեջ գտնվող ծրագրակազմը) բավականաչափ խելացի էր՝ հասկանալու, որ իրենից պահանջվում էր ավելի շատ առաջադրանքներ կատարել, քան պետք է կատարեր: Այնուհետև այն ահազանգ ուղարկեց, որը ուղղված էր տիեզերագնացին. «Ես ծանրաբեռնված եմ ավելի շատ առաջադրանքներով, քան պետք է անեի այս պահին, և ես պատրաստվում եմ կատարել միայն ավելի կարևոր առաջադրանքները»: Այսինքն՝ նրանք, որոնք անհրաժեշտ են վայրէջքի համար… Իրականում, համակարգիչը ծրագրավորվել է ավելիի համար, քան պազրապես սխալի պայմանները ճանաչելը: Ծրագրային ապահովման մեջ ներառվել է վերականգնման ծրագրերի ամբողջական փաթեթ: Ծրագրաշարի գործողությունը, այս դեպքում, ավելի ցածր առաջնահերթ առաջադրանքների վերացումն ու ավելի կարևոր առաջադրանքների վերահաստատումն էր… Եթե համակարգիչը չճանաչեր այս խնդիրը և չձեռնարկեր վերականգնման քայլեր, ես կասկածում եմ, որ Apollo 11-ը հաջողակ վայրէջք կկատարեր»:

Hamilton-ի ներդրումները Apollo նախագծում պարզապես անգնահատելի են: Նրա աշխատանքը հիմք դրեց ժամանակակից ծրագրային ապահովման ինժեներական պրակտիկայի համար և արժանացավ բազմաթիվ պարգևների, այդ թվում՝ 2016 թվականին Ազատության Նախագահական մեդալի:

2022 թվականին Hamilton-ը իրավամբ ընդունվեց Ազգային ավիացիայի փառքի սրահ՝ ամրացնելով իր ժառանգությունը որպես ռահվիրա ինչպես ծրագրային տեխնիկայի, այնպես էլ տիեզերական հետազոտության մեջ: Նրա նվիրվածությունն ու հնարամտությունը շարունակում են ոգեշնչել գիտնականների և ինժեներների սերունդներին՝ հիշեցնելով մեզ մարդկային նորարարության ուժի մասին արտասովոր նպատակների հետապնդման մեջ, ինչպիսին է Apollo-ի՝ Լուսնի վայրէջքը:

--

--