Como hacer un sistema operativo del ordenador

Los sistemas operativos permiten la interacción entre las personas y el hardware de los ordenadores y se hacen con miles y miles de líneas de código. Por lo general, se crean con los siguientes lenguajes de programación:


C, C ++ y montaje.

pasos

Imagen titulada dar un paso del sistema operativo del ordenador 1
1
Aprender a programar antes de comenzar. El lenguaje ensamblador es crítica, mientras que otro idioma adicional y un bajo nivel de importancia que la C es muy recomendable.
  • Imagen titulada dar un paso del sistema operativo del ordenador 2
    2
    Decidir qué los medios de comunicación que desea cargar el sistema operativo. Puede ser un disquete, CD, DVD, memoria USB, disco duro, o incluso otro PC.
  • Imagen titulada dar un paso del sistema operativo del ordenador 3
    3
    Decida lo que quiere su SO (Sistema Operativo) hacer. Ya sea un sistema operativo completo con una interfaz gráfica de usuario (GUI) o algo un poco más minimalista, lo que necesita saber en qué dirección está tomando antes de empezar.
  • Imagen titulada dar un paso del sistema operativo del ordenador 4
    4
    Decidir qué procesador plataforma de apoyo a su sistema operativo. Si no está seguro acerca de esto, lo mejor es centrarse en la plataforma de procesador x86 (32 bits), ya que la mayoría de los equipos utilizan procesadores de la plataforma X86.
  • Imagen titulada dar un paso del sistema operativo del ordenador 5
    5
    Decidir si se quiere desarrollar por completo por su cuenta o si hay algún núcleo disponible a partir del cual se quiere desarrollar su sistema operativo. Linux From Scratch es un proyecto para los que quieren crear su propia distribución de Linux, por ejemplo. Echa un vistazo a los consejos para acceder a un enlace externo.
  • Imagen titulada dar un paso del sistema operativo del ordenador 6
    6


    Decidir si va a utilizar su propio gestor de arranque o una ya existente, tales como GRUB (Grand Unified Bootloader). Una vez establecido su propio gestor de bootlhe sabrá mucho sobre el hardware y el BIOS, esto puede conducir a la larga que la propia idea de la programación del núcleo. Echa un vistazo a los consejos.
  • Imagen titulada dar un paso del sistema operativo del ordenador 7
    7
    Decidir qué lenguaje de programación a usar. Aunque es posible crear un sistema operativo con lenguajes como Pascal o Basic, es mejor utilizar un lenguaje como C o Asamblea. El montaje es absolutamente necesario, ya que algunas partes vitales de un sistema operativo que requerirán. C ++, por otro lado, contiene algunas palabras clave que requieren un sistema operativo completamente desarrollado para que pueda ser ejecutado.
  • Para construir un sistema operativo de código C o C ++, es obvio que utilizar un compilador o de otro tipo. Usted debe leer el manual de documentación del usuario guía / / para su C / C ++ compilador elegido, se empaqueta con el software o en el sitio del distribuidor. Lo que necesita saber muchos detalles complejos sobre su compilador y para el desarrollo de C ++, que debe saber sobre el compilador de esquema y para dar su ABI. Se espera que usted entiende los diversos formatos de archivo ejecutable (ELF, PE, COFF, plan binario (binario sin formato), etc.), así como entender el formato propietario de Windows, PE (.exe) está protegido por derechos de autor.
  • Imagen titulada dar un paso del sistema operativo del ordenador 8
    8
    Decidir sobre su interfaz de programación de aplicaciones (API - Application Programming Interface). Una buena API para ser elegido es POSIX, que está bien documentado. Todos los sistemas UNIX tienen POSIX apoyo, al menos parcial, por lo que sería trivial para aplicaciones UNIX de puerto para su sistema operativo.
  • Imagen titulada dar un paso del sistema operativo del ordenador 9
    9
    Decidir cómo será su diseño. Hay núcleos monolíticos y micro núcleos. los núcleos monolíticos poner en práctica todos los servicios en el núcleo, mientras que las micro núcleos tienen un pequeño núcleo combinado con los demonios de usuario implementación de servicios. En general, los núcleos monolíticos son más rápidos, pero los micro núcleos tener un mejor aislamiento de fallos y una mayor fiabilidad.


  • Imagen titulada dar un paso del sistema operativo del ordenador 10
    10
    Considere la posibilidad de hacer el trabajo de desarrollo en conjunto con un equipo. Por lo tanto, menos tiempo se consume en la solución de una mayor cantidad de problemas, lo que resulta en un mejor sistema operativo.
  • Imagen titulada dar un paso del sistema operativo del ordenador 11
    11
    No limpie completamente el disco duro. Recuerde limpiar completamente su disco que será borrar todos sus datos, y es irreversible! Utilice el cargador de arranque Grub u otro usar el arranque dual que permite el arranque del sistema, así como otro sistema hasta su culmina por completo y funcional.
  • Imagen titulada dar un paso del sistema operativo del ordenador 12
    12
    Comience por debajo. Comenzar con cosas pequeñas, como texto de la pantalla y las interrupciones antes de pasar a temas más complejos como la gestión de memoria y funciones de multitarea.


  • Imagen titulada dar un paso del sistema operativo del equipo 13
    13
    Guarde una copia de seguridad del último código fuente funcional. En caso de que algo va terriblemente mal con la versión actual o si el equipo de desarrollo para visualizar los problemas y ya no puede arrancar o para arrancar, será una gran idea tener una segunda copia para que pueda seguir trabajando o resolver problemas.
  • Imagen titulada dar un paso del sistema operativo del ordenador 14
    14
    Considere la posibilidad de probar el nuevo sistema operativo en una máquina virtual. En lugar de reiniciar el ordenador cada vez que hacer cambios o tienen que transferir los archivos desde el equipo de desarrollo de la máquina de prueba, puede utilizar el software de virtualización para instalar el sistema operativo en una máquina virtual y ejecutar incluso mientras el sistema operativo actual aún se está ejecutando. aplicaciones de virtualización VMWare incluyen (que también tiene una versión gratuita para servidores), la alternativa de código abierto Bochs, Microsoft Virtual PC (no es compatible con Linux), y el xVM VirtualBox. Echa un vistazo a estos consejos para obtener más información.
  • Imagen titulada dar un paso del sistema operativo del ordenador 15
    15
    liberar una "versión candidata" (También conocido como versión candidata, o simplemente RC). Esto permitirá a los usuarios alarma que usted acerca de posibles problemas con su sistema operativo.
  • Imagen titulada dar un paso del sistema operativo del ordenador 16
    16
    Un sistema operativo puede ser también amigable desde el punto de vista del usuario.
  • consejos

    • No empiece un proyecto de desarrollo de un sistema operativo al mismo tiempo que se inicia el aprendizaje en términos de programación. No. En realidad no. Si no lo sabe ya C, C ++, Pascal o cualquier otro lenguaje adecuado en total, incluyendo el manejo de punteros, manipulación de bits en el nivel bajo, poco cepillado, montaje detalles del lenguaje, etc., que no estará listo para desarrollar una Sistema operativo.
    • Si quieres un simple, tenga en cuenta las distribuciones de Linux como Fedora Revisor, Custom X ágil, Puppy Remaster, mklivecd PCLinuxOS o SUSE Studio y SUSE KIWI. Sin embargo, el sistema operativo que se crea pertenece a la compañía que comenzó el trabajo inicial (aunque usted tiene el derecho de distribuir libremente, modificarlo y ejecutarlo de la manera deseada siguiendo la licencia GPL).
    • Después de todo el desarrollo se ha completado, podrá decidir si desea liberar el código fuente como una forma de aplicación de código abierto o que sea propietario.
    • Utilice sitios como OSDev y OSDever como una manera de ayudar al desarrollo de su propio sistema operativo. Sin embargo, por favor entienda que la comunidad OSDev.org vez que utilizasse el proyecto wiki, no participar en el foro. Si desea participar en el foro, hay algunos requisitos que deben observarse. Usted debe conocer en profundidad los lenguajes de programación C o C ++ y ensamblador x86. También es necesario comprender los conceptos generales y complejas de programación tales como listas enlazadas, colas, etc. La comunidad OSDev en su reglamento, establece explícitamente que la comunidad no está ahí para servir como una niñera o tutor para los programadores principiantes. Si usted está tratando de desarrollar un sistema operativo, es decir que no se espera que sea una especie de "dios" de programación. También es necesario haber leído los manuales de procesador para que pueda entender la arquitectura del procesador que escolheu- si X 86 (Intel), ARM, MIPS, PPC, etc. Manuales para una arquitectura de procesador particular, se pueden encontrar fácilmente utilizando el motor de búsqueda de Google ("manuales de Intel", "manuales de ARM"Etc.). No unirse a los foros de la comunidad OSDev.org y empezar a hacer preguntas obvias. Esto dará como resultado sólo en las respuestas de tipo "Lea el manual de la droga". Usted debe tratar de leer la Wikipedia y los manuales de las distintas herramientas que desea utilizar.
    • Puede ser una buena opción para crear una nueva partición para el desarrollo del sistema operativo.
    • Compruebe los puntos muertos potenciales y otros errores o accidentes. Insectos, bloqueos y otros problemas afectarán a su proyecto de sistema operativo.
    • Para obtener más información, consulte las siguientes fuentes:

    anuncios

    • Usted no tendrá un sistema completo en dos semanas. Comience con un sistema operativo que puede dar arranque, y luego ir a la materia fresca.
    • Si haces algo realmente estúpido, como escribir bytes aleatorios de puertos I / O aleatorias, se "voluntad" bloquear el sistema operativo, y puede (en teoría) dañar el hardware. Para una demostración, ejecute `cat / dev / puerto` en Linux como root. El ordenador "voluntad" cuelgue.
    • Asegúrese de poner en práctica las funciones de seguridad como su máxima prioridad si alguna vez desea utilizar su sistema operativo para cualquier cosa.
    • Después de haber escrito el sistema operativo sin cuidado en su disco duro puede corromper por completo. Tenga cuidado.
    • No hay que esperar para desarrollar un sistema operativo adecuado es una tarea fácil. Hay a menudo complejas interdependencias. Por ejemplo, con el fin de hacer que un sistema operativo capaz de manejar múltiples procesadores, la gestión de memoria necesita sus propios mecanismos "bloquear" para evitar que múltiples procesadores accedan al mismo recurso al mismo tiempo. la "cabellos" (Seguros) que se utiliza para este requerirá la presencia de un calendario u organizador para asegurarse de que sólo un procesador para acceder a un recurso crítico en todo momento y que todos los demás permanecen en espera. Este planificador (scheduler) depende de la presencia de un administrador de memoria. Se trata de un caso de bloqueo o dependêndia callejón sin salida. No hay una forma estándar para resolver problemas de este tipo, cada programador del sistema operativo debe tener las habilidades para crear sus propias maneras de tratar con ella.

    materiales necesarios

    • Un buen ordenador
    • Una arquitectura de procesador para el que se quiere desarrollar
    • suficiente memoria RAM para una máquina virtual
    • Un sistema operativo "anfitrión" (Se utiliza para desarrollar el código ensamblador de origen (y otros), así como compilar y empaquetar el mismo que está en sus etapas iniciais- posiblemente, su propio sistema operativo puede ser su propio anfitrión)
    • Un editor de código con coloreado de sintaxis (el uso si usted no tiene un IDE)
    • un compilador
    • Una unidad de disco (no es obligatorio)

    Vídeo: Como instalar 2 sistemas operativos en una pc sin programas (Intalando windows 8 y 7)

    Vídeo: Como hacer un sistema operativo con visual basic 2010 Parte 1

    De esta manera? Compartir en redes sociales:


    Opiniones y Comentarios

    Artículos Relacionados