Кіріспе

Flex компьютерлік жүйесін Майкл Фостер және Иан Керри 1970-ші және 1980-ші жылдары Мальверн қаласындағы Royal Signals and Radar Establishment (RSRE) мекемесінде әзірлеген. Ол мүмкіндіктер архитектурасын іске асыру үшін таңбаланған сақтау схемасын пайдаланды және қатаң түрде тексерілген процедураларды қауіпсіз және тиімді іске асыру үшін құрастырылды. Аппараттық құралдары арнайы және микробағдарламаланатын болды, операциялық жүйе, (модульді) компилятор, редактор, қоқыс жинаушы және файлдық жүйе – барлығы ALGOL 68RS тілінде жазылған. Flex-тің (кем дегенде) екі нұсқасы болды, олар жазуға болатын микрокодты қолдана отырып іске асырылды. Біріншісін RSRE жобасына Logica ұсынды, ал екіншісі ICL PERQ қолданды. Микрокодтың өзі сақтау орнын бөлу, босату және қоқыс жинау процесіне жауапты болды. Бұл деректер көрсеткіштерін дұрыс пайдаланбаудан (қасақана немесе кездейсоқ) туындайтын қателердің толық класын болдырмады. Flex-тің ерекшелігі – бір рет жазылатын, таңбаланған файлдық сақтағыш. Бұл кез келген код пен дерек құрылымдарын сыртқы кодтамаларды пайдаланбай, ашық түрде жазуға және алуға мүмкіндік берді. Осылайша, деректерді бағдарламадан бағдарламаға қауіпсіз түрде беруге болады. Сол сияқты, қашықтықтан қол жеткізу мүмкіндіктері басқа машиналардағы деректер мен процедураларға желілік қосылыс арқылы қол жеткізуге мүмкіндік берді, бұл ретте қолданба бағдарламасы деректердің, параметрлердің немесе нәтижелер мәндерінің сыртқы кодталуына қатыспайды. Бұл схема абстрактілі дерек түрлерін қауіпсіз іске асыруға мүмкіндік берді, себебі дерек элементтері мен оларға рұқсат етілген процедуралар біріктіріле алады, ал нәтижесіндегі мүмкіндік еркін таратылады. Бұл мүмкіндік процедураларға қол жеткізуге рұқсат берсе де, деректерге қол жеткізу үшін оны пайдалануға болмайды. Flex-тің тағы бір ерекшелігі – әлсіз сілтемелер деп аталатын, кейінірек жиі «әлсіз сілтемелер» деп аталатын, келесі қоқыс жинауда босатылатын жад блоктарына сілтеме жасайтын көрсеткіштер. Бұл, мысалы, кэштелген дискілік блоктар немесе бос процедуралық жұмыс орындарының тізімі үшін қолданылады. COMFLEX, магниттік дискінің жылдамдығымен деректерді беруге қабілетті пакеттік коммутациялық желі, Flex-пен бірге әзірленді. Бұл қашықтағы файлдық сақтағыштарды, қашықтықтан қол жеткізу мүмкіндіктерін және қашықтықтан процедура шақыруларын іске асыруға мүмкіндік берді.