Modelo de desarrollo de Linux y mecanismo operativo

  

La aparición del software libre ha cambiado el modelo de desarrollo de software cerrado tradicional basado en la empresa. Se utiliza un modelo de desarrollo abierto y colaborativo para proporcionar el código fuente de forma gratuita, lo que permite que cualquier persona obtenga, modifique y vuelva a publicar el código fuente para el software libre. Este modelo de desarrollo ha inspirado el entusiasmo de los desarrolladores de software en todo el mundo. Un gran número de desarrolladores de software han invertido en el desarrollo de software libre. La sabiduría colectiva de los desarrolladores de software se utiliza completamente, lo que reduce en gran medida la duplicación innecesaria de esfuerzos y permite descubrir la vulnerabilidad del software libre a tiempo. Es imposible para una empresa invertir una mano de obra tan poderosa para desarrollar y probar software comercial. Este modelo de desarrollo le da al software libre una gran vitalidad.

En el proceso de desarrollo comercial de Unix, el desarrollo de todo el sistema requiere estrictas medidas de garantía de calidad, documentación completa, código fuente completo, informes de pruebas completos y soluciones correspondientes. Los desarrolladores no tienen la libertad de agregar funciones al programa y modificar las partes clave del código. Si desea modificar el código, tienen que escribirlo en el informe de errores para que sea válido y luego recibir la verificación del sistema de control del código fuente. Si la modificación no es apropiada, Las modificaciones también pueden ser nulas. Cada desarrollador diseña una o varias partes del código del sistema, y ​​el desarrollador solo puede cambiar el código correspondiente durante la verificación del programa. El departamento de Control de calidad realiza pruebas de regresión rigurosas del nuevo sistema operativo
internamente e informa los problemas encontrados, y el desarrollador es responsable de resolver los problemas informados. El departamento de control de calidad utiliza un sofisticado sistema de análisis estadístico para garantizar que un pequeño porcentaje de los errores del programa se hayan modificado en la próxima versión.

En resumen, el proceso de desarrollo comercial de Unix hace que el código sea muy complicado. Por lo tanto, para garantizar la calidad de revisión del próximo sistema operativo, la empresa debe recopilar y analizar estadísticamente el rendimiento del sistema operativo. Desarrollar un Uinx comercial es un gran proyecto, que a menudo involucra a cientos de programadores, evaluadores, francotiradores y administradores de sistemas.

Para Linux, puede deshacerse del concepto de desarrollo de toda la organización, sistema de control de código fuente, informes estructurados de errores, análisis estadístico, etc.

Linux fue desarrollado originalmente por un grupo de voluntarios de todo el mundo a través de Internet. A través de Internet y otros medios, cualquier persona tiene la oportunidad de ayudar en el desarrollo y depuración de los núcleos de Linux, vincular nuevos programas, escribir documentación o ayudar a nuevos usuarios. De hecho, no hay una organización independiente responsable del desarrollo de este sistema, y ​​la comunidad de Linux se comunica principalmente con el grupo de mensajes de USENET a través de la lista de correo. Muchos acuerdos se han saltado el proceso de desarrollo. Si desea incluir su propio código en el kernel "oficial", simplemente envíe un correo electrónico a Linus Torvalds, y él lo probará e incluirá en el kernel (siempre que el código no haga el kernel Crash y no contradice el diseño general del sistema, Linus está feliz de incluirlo).

El sistema Linux en sí está diseñado con un enfoque completamente abierto y centrado en las funciones. La regla general es lanzar una nueva versión del kernel de Linux en unos pocos meses. Por supuesto, el ciclo de lanzamiento también depende de otros factores, como el número de fallas del programa, el número de versiones preliminares de prueba del usuario y la carga de trabajo de Linux.

Se puede decir que durante las dos versiones, no se han eliminado todos los fallos y se ha solucionado cada problema. Siempre que el sistema no parezca un fallo muy delicado o obvio, se considera estable y se puede lanzar una nueva versión. La motivación para el desarrollo de Linux no es perseguir la perfección y sin problemas, sino desarrollar una implementación gratuita de Unix.

Si desea agregar nuevas funciones o aplicaciones a su sistema, tendrá que pasar por una fase "inicial". La llamada fase "inicial" es una fase de prueba constante por parte de los usuarios que desean detectar problemas con el nuevo código. Dado que la comunidad de Linux se encuentra principalmente en Internet, el software "inicial" generalmente se instala en uno o más LinuxFTP, y se publica un mensaje sobre cómo obtener y probar su código en el grupo de mensajes LinuxUSENET, de modo que la descarga y prueba "inicial" " Los usuarios del software pueden informar los resultados, fallas o problemas al autor.

Una vez resuelto el problema en el código inicial, el código ingresa a la "segunda fase": el trabajo es estable pero aún no está completo (es decir, funciona, pero puede que no tenga todas las características). Por supuesto, también puede entrar en la "última" etapa, es decir, el software está completo y es utilizable. Para el código del kernel, una vez que esté completo, los desarrolladores pueden permitir que Linus lo incluya en el kernel estándar, o como una opción adicional al kernel.

Tenga en cuenta que estos son solo acuerdos y no se forman reglas. Muchas personas no tienen que lanzar su software para la versión inicial o " o beta, por lo que la versión que se lanza se basa en la decisión del desarrollador.

Puede que se sorprenda de cómo un grupo de voluntarios puede escribir y depurar un sistema Unix completo. Todo el kernel de Linux es un patchwork, no hay código fuente patentado, los voluntarios realizan mucho trabajo, trasplantan el software gratuito bajo el sistema GNU a Linux y desarrollan la biblioteca, el sistema de archivos y el controlador general de hardware del dispositivo. Programas, etc.

De hecho, el equipo de desarrollo del kernel de Linux liderado por Linus en todo el mundo todavía se está moviendo a gran velocidad. La versión 2.4.x del núcleo de Linux estable actual demuestra completamente la creatividad extraordinaria del equipo de desarrollo de Linux y el valor de los modelos de desarrollo colaborativo.

Copyright © Conocimiento de Windows All Rights Reserved