ToaruOS 1.14 операциялық жүйесі мен Kuroko 1.1 бағдарламалау тілін шығару

ToaruOS 1.14 жобасының шығарылымы қол жетімді, ол өз ядросымен, жүктеушімен, стандартты C кітапханасымен, пакет менеджерімен, пайдаланушы кеңістігінің құрамдас бөліктерімен және композиттік терезе менеджері бар графикалық интерфейсімен нөлден жазылған Unix тәрізді операциялық жүйені әзірлейді. Дамудың қазіргі кезеңінде жүйенің мүмкіндіктері Python 3 және GCC-ті іске қосу үшін жеткілікті. Жоба коды C тілінде жазылған және BSD лицензиясы бойынша таратылады. Жүктеп алу үшін өлшемі 14 МБ болатын тірі кескін дайындалды, оны QEMU, VMware немесе VirtualBox жүйесінде тексеруге болады.

ToaruOS 1.14 операциялық жүйесі мен Kuroko 1.1 бағдарламалау тілін шығару

Жоба 2010 жылы Иллинойс университетінде басталды және бастапқыда жаңа композиттік графикалық интерфейстерді құру саласындағы зерттеу жұмысы ретінде дамыды. 2012 жылдан бастап әзірлеме ToaruOS операциялық жүйесіне айналды, ол бастапқыда студенттік жоба ретінде әзірленді, содан кейін жобаның айналасында құрылған қауымдастық таңдаған демалыс күндері хоббиіне айналды. Ағымдағы түрінде жүйе композиттік терезе менеджерімен жабдықталған, ELF форматындағы динамикалық байланысты орындалатын файлдарды, көп тапсырманы, графиканы және желілік стектерді қолдайды.

Пакет Python 3.6 бағдарламалау тілінің портын қамтиды, ол пакет менеджері, графикалық редактор, PDF қарау құралы, калькулятор және қарапайым ойындар сияқты кейбір ToaruOS-қа тән графикалық қосымшаларды әзірлеуде қолданылады. ToaruOS жүйесіне тасымалданатын үшінші тарап бағдарламаларына Vim, GCC, Binutils, FreeType, MuPDF, SDL, Cairo, Doom, Quake, Super Nintendo эмуляторы, Bochs және т.б.

ToaruOS монолитті құрылымды және диск драйверлері (PATA және ATAPI), EXT2 және ISO9660 файлдық жүйелері, фреймбуфер сияқты қол жетімді құрылғы драйверлерінің көпшілігін құрайтын жүктелетін модульдерді пайдалану құралдарын біріктіретін гибридті модульдік архитектураны пайдаланатын ядроға негізделген. , пернетақталар, тышқандар , желілік карталар (AMD PCnet FAST, Realtek RTL8139 және Intel PRO/1000), дыбыстық чиптер (Intel AC'97), сонымен қатар қонақ жүйелеріне арналған VirtualBox қондырмалары.

Ядро ұсынған примитивтерге Unix ағындары, TTY, виртуалды файлдық жүйе, көп ағынды, IPC, ортақ жад, көп тапсырма және басқа стандартты мүмкіндіктер кіреді. ext2 файлдық жүйе ретінде пайдаланылады. Ядромен өзара әрекеттесу үшін Linux-пен ұқсастық бойынша жасалған псевдо-FS /proc іске асыру қамтамасыз етіледі.

2021 жылға арналған жоспарларға 64-биттік x86-64 архитектурасында жұмыс (әзірше жинақтар тек 32-биттік x86 жүйелері үшін жасалуда) және мультипроцессорлық жүйелерді қолдау (SMP) кіреді. Басқа мақсаттарға сигналды өңдеу және синхрондау әдістері саласындағы POSIX спецификацияларымен үйлесімділікті жақсарту, стандартты C кітапханасын Newlib деңгейіне жеткізу және өзінің Си тілінің компиляторы мен әзірлеу құралдарын енгізу кіреді.

Жоба сонымен қатар жүйеге арналған утилиталар мен теңшелетін қосымшаларды әзірлеу кезінде Python тілін ауыстыруға арналған өзінің динамикалық бағдарламалау тілін, Kuroko әзірлеуде. Тіл байт-кодтарды құрастыруды және интерпретациялауды қолдайды, оның синтаксисі Python-ға ұқсайды (ол айнымалылардың нақты анықтамасы бар Python тілінің қысқартылған диалектісі ретінде орналасқан) және өте ықшам іске асырылуы бар. Байт-код интерпретаторы қоқыс жинағышты қамтамасыз етеді және жаһандық құлыптауды пайдаланбай көп ағынды қолдайды. Компилятор мен интерпретатор басқа бағдарламалармен біріктірілген және C API арқылы кеңейтілетін шағын ортақ кітапхана (~500 КБ) түрінде құрастырылуы мүмкін. ToaruOS-тан басқа, тілді Linux, macOS, Windows жүйелерінде қолдануға және WebAssembly қолдайтын браузерлерде іске қосуға болады.

ToaruOS-тың жаңа шығарылымы стандартты C кітапханасын және Kuroko бағдарламалау тілін дамытуға бағытталған. Мысалы, Quake ойынындағы жарықтандыру параметрлерін дұрыс есептеу үшін қажетті математикалық функциялар libc-ке қосылды. EFI режимінде VirtualBox-қа жүктеу мүмкіндігі жақсартылды. Жад дискінің кескінін қысу арқылы ISO кескінінің өлшемі кішірейтілді.

Kuroko 1.1 тілінің жаңа шығарылымы синхрондау және күту үшін қолдауды қосады, көп ағынды жүзеге асырады, Python 3 үйлесімділігін жақсартады, бірнеше мән тағайындауды қолдайды, C тілінде өңдеушілерді жазу құралдарын кеңейтеді, функциялар үшін типтік аннотацияларды қолдауды қосады, «кіріс» және «кіріс» кілт сөздері, os, dis, fileio және уақыт модульдері біріктірілді, str, list, dict және байттарда жаңа әдістер енгізілді, байт кодқа алдын ала құрастыруға қолдау қосылды, лицензия бар MIT болып өзгертілді (бұрын MIT және ISC комбинациясы болған).

Ақпарат көзі: opennet.ru

пікір қалдыру