Кіріспе

Құзыреттік негізделген операциялық жүйе. Өте сенімді операциялық жүйе (EROS) – 1991 жылы Пенсильвания университетінде, кейін Джонс Хопкинс университетінде және EROS Group, LLC компаниясында әзірленген операциялық жүйе. Оның ерекшеліктері: автоматты деректер мен процестердің сақталуы, алдын ала нақты уақытты қолдау және құзыреттік негізделген қауіпсіздік. EROS – таза зерттеулік операциялық жүйе, ол ешқашан нақты қолданыста болған емес. 2005 жылдан бастап, даму CapROS жүйесінің пайдасына тоқтатылды.

Негізгі ұғымдар

EROS жүйесінің (және оның туыстарының) басты мақсаты – операциялық жүйе деңгейінде маңызды қосымшаларды шағын байланыс компоненттеріне тиімді қайта құрылымдау үшін күшті қолдау көрсету. Әрбір компонент басқаларымен тек қорғалған интерфейстер арқылы ғана байланыса алады және жүйеден оқшауланады. Осы жағдайда қорғалған интерфейс – операциялық жүйенің ең төменгі деңгейі, ядро арқылы қамтамасыз етілетін интерфейс. Бұл жүйеде ақпаратты бір процестен екіншісіне ауыстыра алатын жалғыз бөлік – осы ядро. Ол сондай-ақ машинаны толық бақылайды және (дұрыс құрастырылған болса) айналып өту мүмкін емес. EROS-та ядро бір компоненттің басқа компоненттің қызметін атауы мен шақыруы үшін процестер аралық байланысты (IPC) пайдаланады, бұл мүмкіндік болып табылады. Ядро мүмкіндіктерді қолдану арқылы процеске барлық байланыс қасатттан экспортталған интерфейс арқылы келуін қамтамасыз етеді. Сондай-ақ, шақырушы компонент шақырылған компонентке жарамды мүмкіндікке ие болмаса, шақыру мүмкін емес екенін қамтамасыз етеді. Қуаттылық жүйелеріндегі қорғаныс мүмкіндіктердің бір компоненттен екіншісіне таралуын шектеу арқылы жүзеге асырылады, көбінесе шектеу деп аталатын қауіпсіздік саясаты арқылы. Қуаттылық жүйелері компоненттік бағдарламалық жасақтама құрылымын табиғи түрде қолдайды. Бұл ұйымдастыру тәсілі объектіге бағытталған бағдарламалау тілінің тұжырымдамасына ұқсас, бірақ ірі гранулярлықта болады және мұрагерлік тұжырымдамасын қамтымайды. Бағдарламалық жасақтама осылай қайта құрылымдалғанда бірнеше артықшылықтар пайда болады: Жеке компоненттер оқиға циклдары ретінде ең табиғи түрде құрылады. Әдетте осылай құрылған жүйелерге әуе кемесінің ұшуды басқару жүйелері (сонымен қатар DO 178B Әуе жүйелері мен жабдықтарының сертификациясы бағдарламалық қамтамасыз етуі қарастырылады) және телефондық коммутация жүйелері (сонымен қатар 5ESS коммутаторы) жатады. Оқиғаға негізделген бағдарламалау осы жүйелер үшін негізінен қарапайымдылық пен беріктілік таңдалады, бұл өмірлік және миссиялық маңызды жүйелердегі маңызды қасиеттер. Компоненттер кішірейіп, жеке-жеке сынауға қолайлы болады, бұл кемшіліктер мен қателерді оңай оқшаулауға және анықтауға көмектеседі. Әрбір компоненттің басқалардан оқшаулануы, бірдеңе дұрыс болмағанда немесе бағдарламалық жасақтама дұрыс жұмыс істемегенде туындауы мүмкін кез келген зақымның ауқымын шектейді. Бұл артықшылықтардың жиынтығы айтарлықтай берік және қауіпсіз жүйелерге әкеледі. Plessey System 250 бастапқыда телефондық коммутаторларда пайдалану үшін жасалған жүйе болды, онда мүмкіндіктерге негізделген дизайн беріктік себептерімен арнайы таңдалды. Көптеген бұрынғы жүйелерден айырмашылығы, EROS-те ресурстарды атау және пайдаланудың жалғыз механизмі – мүмкіндіктер, сондықтан оны кейде таза мүмкіндіктер жүйесі деп атайды. IBM i – коммерциялық сәтті мүмкіндіктер жүйесінің мысалы, бірақ ол таза мүмкіндіктер жүйесі емес. Таза мүмкіндіктер архитектурасы жақсы сынақтан өткен және жетілген математикалық қауіпсіздік модельдерімен қамтамасыз етіледі. Бұл модельдерді қолдану арқылы, егер жүйе дұрыс іске асырылса, мүмкіндіктерге негізделген жүйелерді қауіпсіз етуге болатынын ресми түрде дәлелдеуге болады. "Қауіпсіздік қасиеті" деп аталатын қасиет таза мүмкіндіктер жүйелері үшін шешілетін болып табылған (Лipton қараңыз). Оқшаулаудың негізгі құрылыс блогы болып табылатын қамау, таза мүмкіндіктер жүйелерімен жүзеге асырылуы ресми түрде тексерілді және EROS конструкторымен және KeyKOS фабрикасымен практикалық іске асыруға дейін төмендетілді. Басқа ешқандай бастапқы қорғау механизмі үшін мұндай тексерулер жоқ. Әдебиетте қауіпсіздіктің жалпы жағдайда математикалық түрде шешілмейтінін көрсететін негізгі нәтиже бар (HRU қараңыз, бірақ бұл шектеусіз шектеулі жағдайларда дәлелденетінін ескеріңіз). Ең маңыздысы, қауіпсіздік қазіргі заманғы тауарлық операциялық жүйелердегі барлық бастапқы қорғау механизмдері үшін жалған екені дәлелденді. Қауіпсіздік – кез келген қауіпсіздік саясатын табысты жүзеге асырудың қажетті шарты. Іс жүзінде бұл нәтиже қазіргі тауарлық жүйелерді қамтамасыз ету мүмкін емес екенін білдіреді, бірақ мүмкіндіктерге негізделген жүйелерді жеткілікті күтіммен іске асырылса, қамтамасыз ету мүмкін. EROS немесе KeyKOS-қа ешқашан сәтті енген емес, олардың оқшаулау механизмдерін ішкі шабуылшы ешқашан сәтті жеңген емес, бірақ екі іске асыру жеткілікті күтіммен жасалған-жоқпын білуге болмайды. Coyotos жобасының мақсаты компоненттік оқшаулау мен қауіпсіздіктің нақты қол жеткізілгенін бағдарламалық жасақтаманы тексеру әдістерін қолдану арқылы көрсету болды. L4.sec жүйесі, L4 микроядролық отбасының мұрагері, мүмкіндіктерге негізделген жүйе болып табылады және EROS жобасының нәтижелеріне айтарлықтай әсер етті. Әсер өзара, өйткені EROS-тың жоғары өнімді шақыру жөніндегі жұмысы Jochen Liedtke-нің L4 микроядролық отбасымен жеткен жетістіктерімен күшті ынталандырылды.

Тарих

EROS-тың негізгі әзірлеушісі Джонатан С. Шапиро болды. Ол сонымен қатар EROS операциялық жүйесінен асып түскен, «эволюциялық қадам» болған Coyotos-тың қозғаушы күші де болды. EROS жобасы 1991 жылы бұрынғы операциялық жүйе KeyKOS-тің таза бөлмеде қайта жасалуы ретінде басталды. KeyKOS Key Logic, Inc. компаниясымен әзірленген және Tymshare, Inc. компаниясы жасаған бұрынғы Great New Operating System In the Sky (GNOSIS) жүйесіндегі жұмыстың тікелей жалғасы болды. Key Logic компаниясының 1991 жылы тарауына байланысты KeyKOS-ке лицензия алу мүмкін болмады. KeyKOS танымал, жеңілдетілген процессорларда жұмыс істемегендіктен, оны қолжетімді құжаттамадан қайта құру туралы шешім қабылданды. 1992 жылдың соңына қарай процессор архитектурасы мүмкіндіктер идеясы енгізілгеннен бері айтарлықтай өзгергені анық болды және компоненттік құрылымды жүйелердің практикалықтығы күмәнді болды. Микроядроға негізделген жүйелер, көптеген процестер мен IPC-ге басымдық беретін жүйелер, өнімділік бойынша қиындықтарға тап болды және оларды шешуге бола ма деген сұрақ туды. x86 архитектурасы басым архитектура ретінде көріне бастады, бірақ 386 және 486 процессорларындағы пайдаланушы/қадағалаушы арасындағы ауысудың жоғары уақыт шығыны процеске негізделген оқшаулау үшін үлкен мәселе тудырды. EROS жобасы зерттеу жұмысына айналды және Шапироның диссертациялық зерттеулерінің негізгі бағыты болу үшін Пенсильвания университетіне көшірілді. 1999 жылға қарай Pentium процессоры үшін жоғары өнімділікке ие нұсқа жасалды, ол IPC жылдамдығымен танымал L4 микроядролық отбасымен тікелей бәсекелесе алды. EROS-тың қауіпсіздік механизмі ресми түрде тексерілді, соның нәтижесінде қауіпсіз қабілеттілік жүйелері үшін жалпы ресми модель құрылды. 2000 жылы Шапиро Джонс Хопкинс университетінің компьютерлік ғылымдар факультетіне оқытушы болып кірді. Хопкинстегі мақсат – EROS ядросының мүмкіндіктерін пайдаланып, қолдану деңгейінде қауіпсіз және қорғалатын серверлерді құруды көрсету болды. Қорғаныс жоғары ғылыми-зерттеу жобалары агенттігі және Әскери-әуе күштері ғылыми-зерттеу зертханасының қаржыландыруымен EROS сенімді терезе жүйесін, жоғары өнімділікті, қорғалатын желілік стек пен қауіпсіз веб-браузердің бастамасын құруға негіз болды. Сондай-ақ, жеңіл статикалық тексерудің тиімділігін зерттеу үшін де пайдаланылды. 2003 жылы синхронды IPC примитивтеріне негізделген кез келген жүйелік архитектураға тән (атап айтқанда EROS және L4) бірнеше қиын қауіпсіздік мәселелері анықталды. EROS-тағы жұмыс тоқтатылып, осы мәселелерді шешкен Coyotos пайдасына бұрылды. 2006 жылдан бастап EROS және оның ұрпақтары – жеңілдетілген аппараттық құралдарда жұмыс істейтін жалғыз кеңінен қолжетімді қабілеттілік жүйелері болып табылады.

Мәртебе

EROS және Coyotos жұмыстары бастапқы топ тарапынан тоқтатылды, бірақ ізбасар жүйе бар. CapROS жүйесі тікелей EROS код базасы негізінде дамытылуда. CapROS әртүрлі коммерциялық жобаларда қолданысқа енгізіледі деп күтілуде.