Adeos – компьютер жабдығы мен ОС арасындағы гипервизор. Бірнеше ядроны қатар іске қосып, жүйе ресурстарын бөліседі. Ашық кодты бағдарламалық қамтамасыз ету.
Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Мазмұны
Кіріспе
Наноядро және гипервизор
Nanokernel and hypervisor
Adeos (Операциялық жүйелерге арналған бейімделмелі домендік орта) – компьютерлік аппараттық құралдар мен осы аппараттық құралдарда жұмыс істейтін операциялық жүйе (ОЖ) арасында жұмыс істейтін наноядролық аппараттық абстракция қабаты (HAL) немесе гипервизор. Ол басқа наноядролардан айырмашылығы, сыртқы ядро үшін төменгі деңгейлі қабат ғана емес. Оның орнына, бірнеше ядроны бірге іске қосуға арналған, бұл оны толыққанды виртуализация технологияларына ұқсас етеді. Adeos – GNU General Public License (GPL) лицензиясымен таратылатын тегін және ашық кодты бағдарламалық қамтамасыз ету. Adeos бірнеше операциялық жүйенің арасында немесе бір ОЖ-ның бірнеше данасын арасында аппараттық ресурстарды бөлісуге мүмкіндік беретін икемді ортаны ұсынады, соның арқасында бір аппараттық құралда бір уақытта бірнеше басымдық домендер жұмыс істей алады. Adeos Linux ядросының астына сәтті енгізілді, бұл симметриялық көппроцессорлық (SMP) кластерлеу, тиімді виртуализация, ядроны түзетулерсіз жөндеу және Linux үшін нақты уақыт есептеу (RT) жүйелері сияқты көптеген мүмкіндіктерді ашты. Басқа HAL-дардан ерекшелігі, Adeos Linux жүктелетін ядро модулі ретінде жүктелуі мүмкін, бұл оған басқа ОЖ-мен бірге жұмыс істеуге мүмкіндік береді. Adeos модульдеу және HAL-ды нақты уақыт ядросынан бөлу мақсатында нақты уақыт қолданба интерфейсі (RTAI) аясында әзірленді.
Adeos (Adaptive Domain Environment for Operating Systems) is a nanokernel hardware abstraction layer (HAL), or hypervisor, that operates between computer hardware and the operating system (OS) that runs on it. It is distinct from other nanokernels in that it is not only a low level layer for an outer kernel. Instead, it is intended to run several kernels together, which makes it similar to full virtualization technologies. It is free and open source software released under a GNU General Public License (GPL). Adeos provides a flexible environment for sharing hardware resources among multiple operating systems, or among multiple instances of one OS, thereby enabling multiple prioritized domains to exist simultaneously on the same hardware. Adeos has been successfully inserted beneath the Linux kernel, opening a range of possibilities, such as symmetric multiprocessing (SMP) clustering, more efficient virtualization, patchless kernel debugging, and real time computing (RT) systems for Linux. Unusually among HALs, Adeos can be loaded as a Linux loadable kernel module to allow another OS to run along with it. Adeos was developed in the context of real time application interface (RTAI) to modularize it and separate the HAL from the real time kernel.
Алдыңғы жұмыс
Бір жүйеде бірнеше операциялық жүйе іске қосуға екі түрлі әдіс бар. Біріншісі – симуляцияға негізделген, ол қосымша операциялық жүйелерді іске қосу үшін виртуалды ортаны ұсынады. Екіншісі – аппараттық құралдарды бөлісуге мүмкіндік беру үшін наноядро қабатын пайдалануды ұсынады.
Two categories of methods exist to enable multiple operating systems to run on the same system. The first is simulation based and provides a virtual environment for which to run additional operating systems. The second suggests the use of a nanokernel layer to enable hardware sharing.
Жалпы мақсаттағы операциялық жүйе ресурстарын ортақ пайдалану
Жалпы мақсаттағы операциялық жүйе ресурстарын бөлісу – Adeos-тың негізгі мақсаттарының бірі, бірнеше жалпы мақсаттағы операциялық жүйелерге бірдей аппараттық құралдарды пайдалануға мүмкіндік беретін ортаны жасау.
General purpose operating system resource sharing is one of the main objectives of Adeos, to provide an environment which enables multiple general purpose OSes to share the same hardware.
Операциялық жүйені әзірлеу
Операциялық жүйелерді әзірлеу әдетте күрделі процесс болып табылады, кейде операциялық жүйе іске қосылатын аппараттық құралды зерттеу үшін схемалық эмуляторлар сияқты қосымша жабдықтар қажет болуы мүмкін. Adeos-ты пайдалану операциялық жүйелерді әзірлеуді жеңілдетеді, себебі кез келген қанағаттандырмас мінез-құлықты тиісті доменді басқарушы арқылы бақылауға болады. Ол сондай-ақ операциялық жүйелерді әзірлеу үшін әдепкі доменді басқарушыны ұсынуы мүмкін, оның шеңберінде әзірлеушілер басқаруға тиіс жабдыққа бақыланатын тікелей қол жеткізе алады. Adeos өзі ядролық модуль болғандықтан, мұндай даму доменді басқарушылар Adeos-тан тәуелсіз әзірленуі мүмкін.
Developing OSes is usually a complicated process which sometimes requires extra hardware such as in circuit emulators to probe the hardware on which an OS is running. Using Adeos, OS development is eased since any undesired behavior may be controlled by an appropriate domain handler. It can also provide a default domain handler for OS development under which developers may have controlled direct access to the hardware they are meant to control. As Adeos is itself a kernel module, such development domain handlers may be developed independently from Adeos.
Patchless ядролық жөндеушілер мен зондтаушылар
Adeos ядроны жөндеушілер мен зерттеушілерге Linux-ты өзгертпей-ақ Linux-ты басқаруға жол ашады. Басқа Adeos домендері сияқты, осы мүмкіндіктер де қалыпты ядро модульдері ретінде жүктеледі, содан кейін Adeos-тан сақиналық нөлдік доменді сұрайды. Бұл орындалғаннан кейін, олар үзіліс құбыржолындағы үзілістерді бірінші кезекте жіберуді сұрай алады. Осылайша, Linux кез келген үзілістерді өңдеуге үлкермес бұрын, олар сол үзілістерді ұстап алып, қажетті жөндеу жұмыстарын жүзеге асыра алады. Бұл өнімділік профильдеушілерге және басқа да осындай әзірлеу құралдарына да қатысты қолданылады.
Adeos provides for a way for kernel debuggers and probers to take control of Linux without modifying Linux. As with other Adeos domains, these facilities would load as normal kernel modules and would thereafter request a ring zero domain from Adeos. Once that is done, they may request priority interrupt dispatching in the interrupt pipeline. Hence, before Linux gets to handle any interrupts, they will be able to intercept those interrupts and carry out the requested debugging tasks. This can also be extended to performance profilers and other such development tools.