Кіріспе
Experix – зертханалық жабдықтарды, әсіресе деректерді алу құрылғыларын басқару және олардан алынған деректерді өңдеу, көрсету және сақтау үшін арналған ашық кодты командалық интерпретатор. Қазіргі уақытта ол тек x86 архитектурасындағы Linux жүйесінде қолданылады, бірақ әлі де дамып жатыр, сондықтан пайдаланушылар оны кеңейтуге және жақсартуға қатысуға шақырылады. Experix көптеген коммерциялық деректерді жинау бағдарламаларынан, мысалы LabVIEW-тан түбегейлі өзгеше. LabVIEW өлшеу және басқару қолданбасын графикалық түрде бейнелейді, мұнда дерек ағынын көрсететін қораптар мен байланыстар операциялық бірліктер желісін құрайды. Мұндай жүйелерде қолданба осы символдарды экранда өңдеу арқылы жасалады, ал оны пайдалану үшін батырмаларды басу және GUI ортасындағы әрекеттерді орындау қажет. Ал Experix, керісінше, қолданбаны әдетте бірінен кейін бірі орындалатын операциялар тізбегі ретінде ұсынады. Ол командалық жолды ретті түрде өңдейді, ал командалық жолдағы сандар, операторлар, функциялар мен командалар стектегі нысандарды тұтынып, жасайды. Бұл нысандарға бүтін сандар, әртүрлі өлшемдегі нақты сандар, кешенді және полярлық сандар, сандық типтердің кез келгенінен құралған көп өлшемді массивтер, түрлі жолдар, сондай-ақ функцияларға, командаларға және айнымалыларға (сандар, массивтер және жолдар бола алады) сілтемелер кіреді. Функция, команда немесе оператор стекте белгілі бір нысан түрлерін қажет етеді және стекке нысандарды қояды, сонымен қатар стек нысандары мен айнымалылардың мәнін өзгерте алады, графиктерді салады, құрылғы драйверлерінде операцияларды орындайды және файлдарды оқиды және жазады. Experix GNU GPL лицензиясымен таратылады.
commercial data acquisition programs, for example LabVIEW, which model a measurement and control application as a network of operational units represented graphically as boxes with connections that stand for data flow. In these systems an application is created by manipulating these symbols on the screen, and then it is used by clicking buttons and filling dialog boxes in a GUI environment. Experix, in contrast, represents the application as a series of operations generally taking place one after another. It processes a command line in a sequential way, and numbers, operators, functions and commands in the command line consume and create objects on a stack. These objects include integers and floating point numbers in several sizes, complex and polar numbers, multi dimensional arrays made from any of the numerical types, several kinds of strings, and pointers to functions, commands and variables (which can be numbers, arrays and strings). A function, command or operator requires certain types of objects on the stack and puts objects on the stack, and may also change values in stack objects and variables, draw graphs, order operations in device drivers, and read and write files. Experix is released under the GNU GPL.
Құжаттамалық
Құжаттама кең көлемді. «Кілт сөздер» деген .doc файлы бағдарламадағы функциялар мен деректер құрылымдарын сипаттайды. Командалар, функциялар және операторлар көмек файлдарында сипатталған, оларға Experix-те көмек операторлары арқылы қол жеткізіледі. Көмек файлдары – түспен белгілеу үшін терминал қашқын тізбектері бар қарапайым мәтіндік файлдар. Cat және grep сияқты жүйелік командалар осы файлдарды түсті түрінде көрсетеді, ал Experix екі сұрақ белгісі көмек операторы үшін қолданатын редактор – nano (GNU жобасынан), қашқын тізбектерімен кеңейтілген. Бұл кеңейтуді қамтамасыз ету үшін өзгертілген nano бастапқы кодтары Experix веб-сайтында қолжетімді. Experix пайдаланушылары жұмыс істеген кезде көмек файлдарын түзетуге және жақсартуға шақырылады.
Шектеулер
Қазіргі уақытта experix тек Linux жүйесі үшін және құрастыру тілінде жазылған кодтарға байланысты, x86 архитектурасында ғана қолжетімді. Қазіргі таңдағыда experix графикалық қолдауды тек ашық кодты SVGALib арқылы ғана жүзеге асырады. Бір виртуалды терминалда experix графикалық сессиясын, ал басқаларында мәтіндік немесе X сессияларын іске қосуға болады және олардың арасында пернелердің көмегімен ауысуға болады. Графикалық операцияларды серверлік процесс жасайды, ал experix командалар мен деректерді осы процесске fifo арқылы жібереді. Онда командалық жолдарды алу және оларды орындау кезегіне қою үшін readline (GNU жобасының ашық бастапқы кодты кітапханасы) пайдаланатын орындалу тізбегі бар. Тағы бір тізбек стандартты шығысты (яғни readline-нан алынған эхоны) графикалық сервер командаларына аударады. Experix svgalib-ті пайдаланбастан мәтіндік экранда немесе X терминалында да жұмыс істей алады. x86 архитектурасынан өзге архитектураларда жұмыс істеуі үшін әлі құрастыру кодын және басқа да мәселелерді шешу қажет. Қазіргі уақытта қолжетімді құрылғы драйверлері мен қосымшалардың саны өте шектеулі. Ол желілік компьютерде қауіпсіздікке елеулі қауіп төндіретін root құқықтарымен іске қосылады. Experix-ті root құқықтарынсыз іске қосу мүмкін болғанымен, бұл әлі іске асырылмаған.