Rhyddhau hypervisor lom 3.0

Rhyddhawyd y hypervisor Bareflank 3.0, gan ddarparu offer ar gyfer datblygiad cyflym hypervisors arbenigol. Mae Bareplank wedi'i ysgrifennu yn C ++ ac mae'n cefnogi C ++ STL. Bydd pensaernïaeth fodiwlaidd Bareplank yn caniatáu ichi ehangu galluoedd presennol yr hypervisor yn hawdd a chreu eich fersiynau eich hun o hypervisors, yn rhedeg ar ben caledwedd (fel Xen) ac yn rhedeg mewn amgylchedd meddalwedd sy'n bodoli eisoes (fel VirtualBox). Mae'n bosibl rhedeg system weithredu'r amgylchedd gwesteiwr mewn peiriant rhithwir ar wahân. Mae cod y prosiect yn cael ei ddosbarthu o dan drwydded LGPL 2.1.

Mae Bareplank yn cefnogi Linux, Windows ac UEFI ar CPUs 64-bit Intel ac AMD. Defnyddir technoleg Intel VT-x ar gyfer rhannu caledwedd o adnoddau peiriannau rhithwir. Mae cefnogaeth ar gyfer systemau macOS a BSD wedi'i gynllunio ar gyfer y dyfodol, yn ogystal â'r gallu i weithio ar y platfform ARM64. Yn ogystal, mae'r prosiect yn datblygu ei yrrwr ei hun ar gyfer llwytho VMM (Rheolwr Peiriant Rhithwir), llwythwr ELF ar gyfer llwytho modiwlau VVM, a chymhwysiad bfm i reoli'r hypervisor o ofod defnyddwyr. Mae'n darparu offer ar gyfer ysgrifennu estyniadau gan ddefnyddio elfennau a ddiffinnir yn y manylebau C ++ 11/14, llyfrgell ar gyfer dad-ddirwyn y pentwr eithriadau (dad-ddirwyn), yn ogystal â'i lyfrgell amser rhedeg ei hun i gefnogi'r defnydd o adeiladwyr / distrywwyr a chofrestru trinwyr eithriadau.

Yn seiliedig ar Bareflank, mae system rhithwiroli Boxy yn cael ei datblygu, sy'n cefnogi rhedeg systemau gwesteion ac yn caniatáu defnyddio peiriannau rhithwir ysgafn gyda Linux ac Unikernel i redeg gwasanaethau neu gymwysiadau arbenigol. Ar ffurf gwasanaethau ynysig, gallwch redeg gwasanaethau gwe rheolaidd a chymwysiadau sydd â gofynion arbennig ar gyfer dibynadwyedd a diogelwch, yn rhydd o ddylanwad yr amgylchedd gwesteiwr (mae'r amgylchedd gwesteiwr wedi'i ynysu mewn peiriant rhithwir ar wahân). Mae Bareflank hefyd yn sail i'r hypervisor MicroV, sydd wedi'i gynllunio i redeg peiriannau rhithwir minimalaidd (peiriant rhithwir cymhwysiad sengl), yn gweithredu'r API KVM ac yn addas ar gyfer creu systemau sy'n hanfodol i genhadaeth.

Prif ddatblygiadau arloesol Bareflank 3.0:

  • Pontio i ddefnyddio'r cysyniad microkernel. Yn flaenorol, roedd gan yr hypervisor bensaernïaeth monolithig, lle, er mwyn ehangu ymarferoldeb, roedd angen defnyddio API arbennig ar gyfer cofrestru galwadau yn ôl, a oedd yn ei gwneud hi'n anodd datblygu estyniadau oherwydd y rhwymiad i'r iaith C ++ a strwythur mewnol. Mae'r bensaernïaeth newydd sy'n seiliedig ar ficrocnewyllyn yn cynnwys rhannu'r hypervisor yn gydrannau cnewyllyn sy'n rhedeg ar sero cylch o amddiffyniad ac estyniadau sy'n rhedeg ar gylch tri (gofod defnyddiwr). Mae'r ddwy ran yn rhedeg yn y modd gwraidd VMX, ac mae popeth arall, gan gynnwys yr amgylchedd gwesteiwr, yn rhedeg yn y modd di-wraidd VMX. Mae estyniadau gofod defnyddwyr yn gweithredu ymarferoldeb Rheolwr Peiriant Rhithwir (VMM) ac yn rhyngweithio â'r craidd hypervisor trwy alwadau system sy'n gydnaws yn ôl. Gellir creu estyniadau mewn unrhyw iaith raglennu, gan gynnwys Rust.
  • Gwnaethpwyd trawsnewidiad i ddefnyddio ein llyfrgell BSL ein hunain gyda chefnogaeth i Rust a C++, a ddisodlodd y llyfrgelloedd allanol libc++ a newlib. Trwy ddileu dibyniaethau allanol, mae Bareflank yn darparu cymorth casglu Windows brodorol i symleiddio datblygiad ar y platfform hwnnw.
  • Cefnogaeth ychwanegol i broseswyr AMD. Ar ben hynny, mae datblygiad Bareflank bellach yn cael ei wneud ar system gyda CPU AMD a dim ond wedyn yn cael ei drosglwyddo i CPU Intel.
  • Mae'r cychwynnwr wedi ychwanegu cefnogaeth i bensaernïaeth ARMv8, a bydd addasiad o'r hypervisor ar ei gyfer yn cael ei gwblhau yn un o'r datganiadau nesaf.
  • Sicrhawyd cydymffurfiad â'r gofynion ar gyfer datblygu systemau critigol a luniwyd gan sefydliadau AUTOSAR a MISRA.

Ffynhonnell: opennet.ru

Ychwanegu sylw