Núcleo de Linux unificado

Núcleo de Linux unificado

Lanzado por Kingsoft Office a través del kernel de Linux unificado versión 0.2.1
Tipo de Núcleo
Desarrollador Tecnología Insigma
Escrito en C
Sistema operativo similar a Unix
plataforma de hardware IA-32 y x86_64
ultima versión 0.3.2 (8 de junio de 2011)
candidato de lanzamiento 1.0 RC2 (14 de enero de 2014)
versión beta 0.4.0 (2 de junio de 2012)
Licencia Licencia pública general GNU versión 2
Sitio web longene.org/es/index.php

El  kernel de Linux unificado ( Linux Unified Kernel , Longene [1] o LUK informal ) es un kernel de sistema operativo diseñado para la compatibilidad binaria de aplicaciones y controladores de dispositivos utilizados en Microsoft Windows y Linux , sin el uso de virtualización o emulación [2] .

El proyecto está escrito en C , es un software gratuito y de código abierto y utiliza la licencia GPL versión 2 [3] . El primer número tuvo lugar en 2006 .

Características

El objetivo del proyecto Longene es agregar mecanismos del kernel de Windows, incluidas llamadas al sistema, registro de Windows, modelo de controlador de Windows (WDM), llamada de procedimiento diferido (DPC) y otros al kernel de Linux para crear un nuevo kernel. El nuevo kernel le permitirá ejecutar aplicaciones tanto de Linux como de Windows, así como utilizar controladores de dispositivos.

Para evitar la sobrecarga de código , si una función está disponible tanto en ReactOS como en el kernel de Linux, se usa la variante del kernel de Linux. Las funciones se implementan utilizando módulos del kernel de Linux cargables para una carga y descarga rápidas.

Longene tiene llamadas al sistema Windows y Linux y sus respectivas tablas. Las aplicaciones de Windows pueden llamar a la interrupción de software "int 0x2e", mientras que las aplicaciones de Linux usan la llamada de tabla a través de "int 0x80".

El proyecto del kernel de Linux unificado no desarrolla bibliotecas a nivel de usuario para Windows y Linux. Proyectos relevantes como Wine , ReactOS y GNU están haciendo esto .

Desarrollo

En septiembre de 2005, el proyecto Linux Unified Kernel recibió el patrocinio de la corporación china de consultoría de TI Insigma Technology [4] . El líder Decao Mao esbozó los objetivos y formas de desarrollar el proyecto [5] . Ha escrito numerosos artículos sobre el mercado, los derechos de autor de la propiedad intelectual [6] [7] y ha esbozado las condiciones necesarias para alcanzar el objetivo. Los artículos de Mao se recopilan en las páginas del proyecto.

Para crear un solo kernel de Linux, debe agregar los siguientes elementos:

Para lograr el objetivo, el núcleo fusionado se lanza como parches de Linux . Los desarrolladores esperan que estos parches se fusionen con la rama principal del kernel. Esto facilitará la migración de programas desde la plataforma Windows y hará que los controladores de Linux sean más baratos de producir. Además, existen paquetes binarios listos para usar para sistemas como Ubuntu , Fedora y Red Flag Linux .

Estrategia de desarrollo

Longene está implementando gradualmente los módulos API de Win32 que se convertirán en parte del kernel compartido en lugar de los módulos de wineserver que traducen las llamadas del sistema Windows a las llamadas del sistema Linux. Longene también modifica los archivos de sistema wine , kernel32.dll , user32.dll , gdi32.dll y ntdll.dll que llaman a los módulos wineserver para obtener la implementación de la API de Win32 en el espacio del kernel. En un estado de transición, Longene usa módulos de wineserver para manejar funciones que aún no se han transferido al kernel, por lo que incluso las versiones sin terminar ejecutan aplicaciones Win32.

A partir de la versión 0.3, wineserver se abandonó por completo, pero Longene aún requiere archivos de sistema modificados kernel32.dll, user32.dll, gdi32.dll y ntdll.dll, así como algunas bibliotecas de vino. Para los controladores de dispositivos, Longene usa NDISwrapper . La funcionalidad faltante del modelo de controlador de Windows se ha complementado con descripciones de ReactOS . El mecanismo del kit de controladores de Windows se basa en el código de ReactOS. Utiliza una combinación de reenvío de recursos a los controladores del kernel de Linux y bibliotecas adicionales que implementan funciones que no se encuentran en Linux.

Historial de lanzamientos

Una versión anterior se conocía como unifiedkernel-2.6.13 y se lanzó el 15 de febrero de 2006 . Esta versión contenía implementaciones iniciales del mecanismo de llamada al sistema de Windows, con funciones prototipo de llamada al sistema. Versiones existentes:

Color Sentido
Rojo La versión ya no es compatible
Verde Lanzamiento aún compatible
Azul Lanzamientos futuros
Versión Fecha de lanzamiento Información de liberación
0.1.0 30 de abril de 2006
  • Código portado de kernel-win32
  • El mecanismo de llamada al sistema de Windows se basa en "int 2e"
0.2.0 31 de diciembre de 2006
  • Mecanismo implementado para crear procesos/subprocesos de Windows
  • Mecanismo APC de Windows parcialmente implementado
0.2.1 4 de febrero de 2008
0.2.2 31 de octubre de 2008
  • Ficha de mecanismo
  • Instalador gráfico
0.2.2-1 17 de diciembre de 2008
  • Error de corrección
0.2.3 12 de febrero de 2009
0.2.4 22 de mayo de 2009
  • Gestión del sistema de archivos portado desde Wine
  • Implementación parcial de la API de administración de registros
  • Paquetes binarios para distribuciones populares
0.2.4.1 31 de agosto de 2009
  • Transición al kernel de Linux 2.6.30
  • Soporte para nuevos sistemas de archivos ( ext4 y otros)
0.3 31 de mayo de 2010
  • Mueva toda la funcionalidad de WineServer al espacio del kernel y desactive WineServer por completo.
0.3.1 28 de febrero de 2011
  • Soporte para usuarios no root
0.3.2 8 de junio de 2011
  • soporte de consola de vino. Las aplicaciones de la consola de Windows, como cmd.exe, se pueden iniciar con el comando wineconsole cmd.exe
  • Los procesos creados admiten temas de espacio de trabajo

Estado actual y desarrollo futuro

Los desarrolladores están trabajando en la estabilidad de SMP [8] y en la migración de NDISwrapper.

Durante el desarrollo, los cambios en el código del núcleo son mínimos, ya que se utilizan módulos cargables.

Se espera que las versiones futuras agreguen la siguiente funcionalidad:

Soporte de arquitectura

Se espera que el puerto Loongson 3 use nuevas instrucciones para emular hardware x86 .

Longene también se puede ejecutar en programas de virtualización o emulación de hardware como VMware y VirtualBox .

Aplicación

Requisitos de hardware

Requisitos mínimos de hardware para ejecutar:

Véase también

Notas

  1. Sitio web de UnifiedKernel  (inglés)  (enlace no disponible) . Grupo de proyecto del kernel unificado de Linux (2010). Archivado desde el original el 20 de junio de 2009.
  2. Proyecto de kernel unificado de Linux (inglés) (enlace descendente) . Grupo de proyecto del kernel unificado de Linux (2008). Archivado desde el original el 28 de abril de 2012.   
  3. P: ¿Se abrirá o no el código del kernel unificado de Linux? (Inglés) (enlace inaccesible) . Archivado el 28 de abril de 2012 en Linux Unified Kernel Project Group .   
  4. La comunidad de software de código abierto de China se lanzó oficialmente el  1 de septiembre . www.21tx.com (2 de septiembre de 2005). - (Traducción automática). Archivado desde el original el 15 de marzo de 2012.
  5. ↑ Llegó el volumen del pulso y el núcleo interno  . ccidnet.com. - (Traducción automática).
  6. Sobre los derechos de propiedad intelectual (1  ) . - (Traducción automática).  (enlace no disponible)
  7. Sobre los derechos de propiedad intelectual (2  ) . - (Traducción automática).  (enlace no disponible)
  8. Sean. Compatible con el problema del núcleo SMP  . Grupo de proyecto del kernel unificado de Linux (26 de agosto de 2009). - (Traducción automática).
  9. ↑ Lanzamiento de Magic Linux 2.1 . (Traducción automática). Archivado desde el original el 4 de marzo de 2016.
  10. Lanzamiento de Magic Linux 2.5 rc2 . (Traducción automática). Archivado desde el original el 4 de marzo de 2016.

Enlaces