Unified Linux Kernel

Unified Linux Kernel

Lanceret af Kingsoft Office via unified Linux-kerneversion 0.2.1
Type Nucleus
Udvikler Insigma teknologi
Skrevet i C
Operativ system Unix-agtig
Hardware platform IA-32 og x86_64
nyeste version 0.3.2 (8. juni 2011)
frigivelseskandidat 1.0 RC2 (14. januar 2014)
beta version 0.4.0 (2. juni 2012)
Licens GNU General Public License version 2
Internet side longene.org/en/index.php

Den  forenede Linux-kerne ( Linux Unified Kernel , Longene [1] eller uformel LUK ) er en operativsystemkerne designet til binær kompatibilitet af applikationer og enhedsdrivere, der bruges i Microsoft Windows og Linux , uden brug af virtualisering eller emulering [2] .

Projektet er skrevet i C , er gratis og open source-software og bruger GPL version 2 -licensen [3] . Den første udgivelse fandt sted i 2006 .

Funktioner

Målet med Longene-projektet er at tilføje Windows-kernemekanismer, herunder systemkald, Windows-registrering, Windows Driver Model (WDM), Deferred Procedure Call (DPC) og andre til Linux-kernen for at skabe en ny kerne. Den nye kerne vil give dig mulighed for at køre både Linux- og Windows-applikationer samt bruge enhedsdrivere.

For at forhindre code bloat , hvis en funktion er tilgængelig i både ReactOS og Linux-kernen, bruges Linux-kernevarianten. Funktioner implementeres ved hjælp af indlæsbare Linux-kernemoduler til hurtig indlæsning og aflæsning.

Longene har Windows- og Linux-systemkald og deres respektive tabeller. Windows-applikationer kan kalde softwareinterrupt "int 0x2e", mens Linux-applikationer bruger tabelkald via "int 0x80".

Unified Linux Kernel Project udvikler ikke biblioteker på brugerniveau til Windows og Linux. Relevante projekter som Wine , ReactOS og GNU gør dette .

Udvikling

I september 2005 modtog Linux Unified Kernel-projektet sponsorat fra det kinesiske it-konsulentfirma Insigma Technology [4] . Lederen Decao Mao skitserede målene og måderne at udvikle projektet på [5] . Han har skrevet mange artikler om markedet, copyright intellektuel ejendom [6] [7] og skitseret de nødvendige betingelser for at nå målet. Maos artikler er samlet på projektsiderne.

For at oprette en enkelt Linux-kerne skal du tilføje følgende elementer:

For at nå målet frigives den fusionerede kerne som linux - patches . Udviklerne forventer, at disse patches bliver flettet ind i hovedkernegrenen. Dette vil gøre det lettere at portere programmer fra Windows-platformen og gøre Linux-drivere billigere at producere. Derudover er der færdige binære pakker til systemer som Ubuntu , Fedora og Red Flag Linux .

Udviklingsstrategi

Longene implementerer gradvist Win32 API-moduler, der bliver en del af den delte kerne i stedet for vinservermoduler, der oversætter Windows-systemkald til Linux-systemkald. Longene ændrer også systemfilerne vin , kernel32.dll , user32.dll , gdi32.dll og ntdll.dll , der kalder vinservermodulerne, for at få Win32 API-implementeringen i kernerummet. I en overgangstilstand bruger Longene vinservermoduler til at håndtere funktioner, der endnu ikke er porteret til kernen, så selv ufærdige udgivelser kører Win32-applikationer.

Fra og med version 0.3 blev vinserveren fuldstændig forladt, men Longene kræver stadig ændrede systemfiler kernel32.dll, user32.dll, gdi32.dll og ntdll.dll samt nogle vinbiblioteker. Til enhedsdrivere bruger Longene NDISwrapper . Den manglende funktionalitet i Windows-drivermodellen er blevet suppleret med beskrivelser fra ReactOS . Windows Driver Kit-mekanismen er baseret på ReactOS-koden. Den bruger en kombination af ressourcevideresendelse til Linux-kernedrivere og yderligere biblioteker, der implementerer funktioner, der ikke findes i Linux.

Udgivelseshistorik

En tidlig version blev kendt som unifiedkernel-2.6.13 og blev udgivet den 15. februar 2006 . Denne udgivelse indeholdt indledende implementeringer af Windows syscall-mekanismen med prototype syscall-funktioner. Eksisterende versioner:

Farve Betyder
Rød Udgivelsen understøttes ikke længere
Grøn Udgivelsen understøttes stadig
Blå Fremtidige udgivelser
Version Udgivelses dato Udgivelsesoplysninger
0.1.0 30. april 2006
  • Porteret kode fra kernel-win32
  • Windows systemopkaldsmekanisme er baseret på "int 2e"
0.2.0 31. december 2006
  • Implementeret mekanisme til oprettelse af Windows processer/tråde
  • Delvis implementeret Windows APC-mekanisme
0.2.1 4. februar 2008
0.2.2 31. oktober 2008
  • Mekanisme -token
  • Grafisk installatør
0.2.2-1 17. december 2008
  • Fejlretning
0.2.3 12. februar 2009
0.2.4 22. maj 2009
  • Filsystemstyring porteret fra vin
  • Delvis implementering af Registry Management API
  • Binære pakker til populære distributioner
0.2.4.1 31. august 2009
  • Overgang til Linux-kerne 2.6.30
  • Support til nye filsystemer ( ext4 og andre)
0,3 31. maj 2010
  • Flyt al vinserverfunktionalitet til kerneplads, og foræl vinserveren fuldstændigt
0.3.1 28. februar 2011
  • Support til ikke-root-brugere
0.3.2 8. juni 2011
  • understøttelse af vinkonsol. Windows-konsolapplikationer såsom cmd.exe kan startes ved hjælp af kommandoen wineconsole cmd.exe
  • Oprettede processer understøtter arbejdsrumstemaer

Nuværende status og fremtidig udvikling

Udviklerne arbejder på stabiliteten af ​​SMP [8] og porting af NDISwrapper.

Under udvikling er ændringer i kernekoden minimale, da der bruges indlæsbare moduler.

Fremtidige udgivelser forventes at tilføje følgende funktionalitet:

Arkitekturstøtte

Loongson 3-porten forventes at bruge nye instruktioner til at emulere x86 - hardware .

Longene kan også køres i hardwareemulering eller virtualiseringsprogrammer som VMware og VirtualBox .

Ansøgning

Hardwarekrav

Minimumskrav til hardware for at køre:

Se også

Noter

  1. UnifiedKernel Website  (engelsk)  (link ikke tilgængeligt) . Linux Unified Kernel Project Group (2010). Arkiveret fra originalen den 20. juni 2009.
  2. Linux Unified Kernel Project (engelsk) (downlink) . Linux Unified Kernel Project Group (2008). Arkiveret fra originalen den 28. april 2012.   
  3. Sp.: Vil Linux Unified Kernel-koden åbne eller ej? (engelsk) (utilgængeligt link) . Arkiveret 28. april 2012 hos Linux Unified Kernel Project Group .   
  4. China Open Source Software-fællesskab blev officielt udgivet den  1. september . www.21tx.com (2. september 2005). - (Maskinoversættelse). Arkiveret fra originalen den 15. marts 2012.
  5. ↑ Pulsvolumen og den indre kerne kom  . ccidnet.com. - (Maskinoversættelse).
  6. Om de intellektuelle ejendomsrettigheder (1  ) . - (Maskinoversættelse).  (utilgængeligt link)
  7. Om de intellektuelle ejendomsrettigheder (2  ) . - (Maskinoversættelse).  (utilgængeligt link)
  8. Sean. Kompatibel med SMP-  kerneproblemet . Linux Unified Kernel Project Group (26. august 2009). - (Maskinoversættelse).
  9. Magic Linux 2.1 udgivet . (Maskinoversættelse). Arkiveret fra originalen den 4. marts 2016.
  10. Magic Linux 2.5 rc2 frigivet . (Maskinoversættelse). Arkiveret fra originalen den 4. marts 2016.

Links