Unified Linux Kernel

Unified Linux Kernel

Lanserades av Kingsoft Office via unified Linux kernel version 0.2.1
Sorts Kärna
Utvecklaren Insigma-teknik
Skrivet i C
Operativ system Unix-liknande
Hårdvaruplattform IA-32 och x86_64
senaste versionen 0.3.2 (8 juni 2011)
släppa kandidat 1.0 RC2 (14 januari 2014)
betaversion 0.4.0 (2 juni 2012)
Licens GNU General Public License version 2
Hemsida longene.org/en/index.php

Den  förenade Linuxkärnan ( Linux Unified Kernel , Longene [1] eller informell LUK ) är en operativsystemkärna designad för binär kompatibilitet av applikationer och enhetsdrivrutiner som används i Microsoft Windows och Linux , utan användning av virtualisering eller emulering [2] .

Projektet är skrivet i C , är gratis och öppen källkod och använder GPL version 2 -licensen [3] . Det första numret ägde rum 2006 .

Funktioner

Målet med Longene-projektet är att lägga till Windows-kärnmekanismer inklusive systemanrop, Windows-register, Windows Driver Model (WDM), Deferred Procedure Call (DPC) och andra till Linux-kärnan för att skapa en ny kärna. Den nya kärnan låter dig köra både Linux- och Windows-applikationer, samt använda enhetsdrivrutiner.

För att förhindra code bloat , om en funktion är tillgänglig i både ReactOS och Linux-kärnan, används Linux-kärnvarianten. Funktioner implementeras med laddningsbara Linux-kärnmoduler för snabb in- och urladdning.

Longene har Windows och Linux systemanrop och deras respektive tabeller. Windows-applikationer kan anropa mjukvaruavbrott "int 0x2e" medan Linux-applikationer använder tabellanrop via "int 0x80".

Unified Linux Kernel Project utvecklar inte bibliotek på användarnivå för Windows och Linux. Relevanta projekt som Wine , ReactOS och GNU gör detta .

Utveckling

I september 2005 fick Linux Unified Kernel-projektet sponsring från det kinesiska IT-konsultföretaget Insigma Technology [4] . Ledaren Decao Mao beskrev målen och sätten att utveckla projektet [5] . Han har skrivit många artiklar om marknaden, copyright immateriella rättigheter [6] [7] och beskrivit de nödvändiga förutsättningarna för att nå målet. Maos artiklar finns samlade på projektsidorna.

För att skapa en enda Linux-kärna måste du lägga till följande element:

För att uppnå målet släpps den sammanslagna kärnan som linux - patchar . Utvecklarna förväntar sig att dessa patchar ska slås samman till huvudkärngrenen. Detta kommer att göra det lättare att porta program från Windows-plattformen och göra Linux-drivrutiner billigare att producera. Dessutom finns det färdiga binära paket för system som Ubuntu , Fedora och Red Flag Linux .

Utvecklingsstrategi

Longene implementerar gradvis Win32 API-moduler som kommer att bli en del av den delade kärnan istället för vinservermoduler som översätter Windows-systemanrop till Linux-systemanrop. Longene modifierar även systemfilerna vin , kernel32.dll , user32.dll , gdi32.dll och ntdll.dll som anropar vinservermodulerna för att få Win32 API-implementeringen i kärnutrymmet. I ett övergångstillstånd använder Longene vinservermoduler för att hantera funktioner som ännu inte är portade till kärnan, så även oavslutade utgåvor kör Win32-applikationer.

Från och med version 0.3 övergavs vinservern helt, men Longene kräver fortfarande modifierade systemfiler kernel32.dll, user32.dll, gdi32.dll och ntdll.dll, samt vissa vinbibliotek. För enhetsdrivrutiner använder Longene NDISwrapper . Den saknade funktionaliteten i Windows-drivrutinsmodellen har kompletterats med beskrivningar från ReactOS . Windows Driver Kit-mekanismen är baserad på ReactOS-koden. Den använder en kombination av vidarebefordran av resurser till Linux-kärndrivrutiner och ytterligare bibliotek som implementerar funktioner som inte finns i Linux.

Utgivningshistorik

En tidig version var känd som unifiedkernel-2.6.13 och släpptes den 15 februari 2006 . Denna utgåva innehöll initiala implementeringar av Windows syscall-mekanismen, med prototyp syscall-funktioner. Befintliga versioner:

Färg Menande
Röd Release stöds inte längre
Grön Release stöds fortfarande
Blå Framtida releaser
Version Utgivningsdatum Släpp information
0.1.0 30 april 2006
  • Porterad kod från kernel-win32
  • Windows systemanropsmekanism är baserad på "int 2e"
0.2.0 31 december 2006
  • Implementerad mekanism för att skapa Windows-processer/trådar
  • Delvis implementerad Windows APC-mekanism
0.2.1 4 februari 2008
0.2.2 31 oktober 2008
  • Mekanism Token
  • Grafisk installatör
0.2.2-1 17 december 2008
  • Felkorrigering
0.2.3 12 februari 2009
0.2.4 22 maj 2009
  • Filsystemhantering portad från vin
  • Partiell implementering av Registry Management API
  • Binära paket för populära distributioner
0.2.4.1 31 augusti 2009
  • Övergång till Linux-kärna 2.6.30
  • Stöd för nya filsystem ( ext4 och andra)
0,3 31 maj 2010
  • Flytta all vinserverfunktion till kärnutrymmet och fasa ut vinservern helt
0.3.1 28 februari 2011
  • Stöd för icke-rootanvändare
0.3.2 8 juni 2011
  • stöd för vinkonsoler. Windows-konsolapplikationer som cmd.exe kan startas med kommandot wineconsole cmd.exe
  • Skapade processer stöder arbetsytasteman

Nuvarande status och framtida utveckling

Utvecklarna arbetar med stabiliteten för SMP [8] och portar NDISwrapper.

Under utvecklingen är ändringar i kärnkoden minimala, eftersom laddningsbara moduler används.

Framtida utgåvor förväntas lägga till följande funktionalitet:

Arkitekturstöd

Loongson 3-porten förväntas använda nya instruktioner för att emulera x86- hårdvara .

Longene kan också köras i hårdvaruemulering eller virtualiseringsprogram som VMware och VirtualBox .

Applikation

Hårdvarukrav

Minsta hårdvarukrav för att köra:

Se även

Anteckningar

  1. UnifiedKernel-webbplats  (engelska)  (länk ej tillgänglig) . Linux Unified Kernel Project Group (2010). Arkiverad från originalet den 20 juni 2009.
  2. Linux Unified Kernel Project (engelska) (nedlänk) . Linux Unified Kernel Project Group (2008). Arkiverad från originalet den 28 april 2012.   
  3. F: Kommer Linux Unified Kernel-koden att öppnas eller inte? (engelska) (otillgänglig länk) . Arkiverad 28 april 2012 på Linux Unified Kernel Project Group .   
  4. China Open Source Software-gemenskap släpptes officiellt den  1 september . www.21tx.com (2 september 2005). - (Maskinöversätta). Arkiverad från originalet den 15 mars 2012.
  5. ↑ Pulsvolymen och den inre kärnan kom  . ccidnet.com. - (Maskinöversätta).
  6. Om immateriella rättigheter (1  ) . - (Maskinöversätta).  (inte tillgänglig länk)
  7. Om immateriella rättigheter (2  ) . - (Maskinöversätta).  (inte tillgänglig länk)
  8. Sean. Kompatibel med SMP-  kärnproblemet . Linux Unified Kernel Project Group (26 augusti 2009). - (Maskinöversätta).
  9. Magic Linux 2.1 släppt . (Maskinöversätt). Arkiverad från originalet den 4 mars 2016.
  10. Magic Linux 2.5 rc2 släppt . (Maskinöversätt). Arkiverad från originalet den 4 mars 2016.

Länkar