Crear Sistema Operativo Desde Cero

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 4

TECNOLOGÍA

SEGURIDAD INFORMÁTICA
SISTEMA OPERATIVO 1

TEMA:
CREACIÓN DE SISTEMA OPERATIVO

POR:
ELIANNY MASSIEL GERMOSEN DE LOS SANTOS

MATRÍCULA:
2023-0327

FACILITADOR:
SUCRE RÁMIREZ

LA CALETA, BOCA CHICA


22-02-2023
CÓMO CREAR UN SISTEMA OPERATVO DESDE CERO
COSAS NECESARIAS ANTES DE INICIAR

▪ Una computadora.
▪ Un CPU para la arquitectura que vaya a desarrollar.
▪ Memoria (RAM) suficiente para una computadora virtual.
▪ Un sistema operativo anfitrión (para desarrollar el ensamblador, otros códigos fuente,
para construirlo y empaquetarlo mientras esté en sus primeras etapas, con el tiempo
tu propio sistema operativo podría ser su anfitrión).
▪ Editor de coloreado de sintaxis (si no tiene “Entorno de desarrollo integrado”).
▪ Un compilador.
▪ Una unidad CD/DVD.

PASOS PARA CREAR SISTEMA OPERATIVO DESDE CERO

PASO 1. Poseer conocimientos de programación antes de empezar. El lenguaje ensamblador


es esencial; otro lenguaje adicional de bajo nivel como C será muy recomendable.

PASO 2. Seleccionar en qué medio desea cargar el sistema operativo. Podría ser una unidad
de CD, DVD, de flash, un disco duro o en otra PC.

PASO 3. Decidir qué quiere que haga su sistema operativo. Si se trata de un sistema
operativo completamente capaz que tiene una interfaz gráfica de usuario (GUI, Graphical
User Interface) o algo un poco más minimalista, tendrá que saber qué dirección vas a tomar
antes de comenzar.

PASO 4. Especificar qué plataforma de procesador será compatible con su sistema operativo.
Reconmendable las dos más comunes para las computadoras personales: AI-32 y x86_64.

PASO 5. Decidir si prefiere hacerlo todo usted mismo desde cero o si hay un núcleo
existente que te gustaría usar como base para construir. Por ejemplo, programar Linux desde
cero será un proyecto para aquellos que le gustaría crear su propia distribución de Linux.

PASO 6. Decidir si va a utilizar su propio gestor de arranque o uno pre-creado como el


cargador de arranque unificado global (GRUB, Grand Unified Bootloader). Debido a que
para programar el código de su propio gestor de arranque necesitará poseer un conocimiento
amplio del hardware y del BIOS, podría retrasarte para programar el núcleo en sí.

PASO 7. Seleccionara qué lenguaje de programación va a utilizar. Si bien es posible crear


un sistema operativo con un lenguaje como Pascal o BASIC, será mejor si usa C o el
ensamblador. El ensamblador es absolutamente necesario, ya que algunas partes vitales de
un sistema operativo lo necesitan. Por su parte, C++ contiene palabras clave que necesitan
otro sistema operativo totalmente integrado para poder funcionar.
Dato importante: Para poder compilar un sistema operativo con el código C o C++, por
supuesto tendrá que utilizar cualquier compilador. Por lo tanto, deberá leer la guía o los
manuales o la documentación de usuario del compilador C o C++ que vaya a elegir, ya sea
si se incluye con el software o esté disponible en la página web del distribuidor. Tendrá que
saber muchas cosas complejas acerca del compilador y para desarrollar con C++ deberá tener
conocimientos de decoración de nombre (mangling scheme) del compilador y de su ABI. Se
supone que tendrá que conocer los diversos formatos ejecutables (ELF, PE, COFF, binarios
sin formato, etc.) y entender que el formato patentado de Windows, PE (.exe), está protegido
por los derechos de autor.

PASO 8. Decidir cuál será la interfaz de programación de aplicaciones (API, Application


Programming Interface). Recomendable POSIX, ya que está bien documentada. Todos los
sistemas Unix tienen al menos el soporte parcial para POSIX, por lo que sería trivial conectar
programas Unix con su sistema operativo.

PASO 9. Decidir el diseño. Existen núcleos monolíticos y micronúcleos. Los monolíticos


implementan todos los servicios en el núcleo, mientras que los micronúcleos tienen un núcleo
pequeño combinado con servicios de implementación de demonios de usuario. En general,
los núcleos monolíticos son más rápidos, pero los micronúcleos tienen un mejor aislamiento
de fallos y fiabilidad.

PASO 10. Considere desarrollar y trabajar en equipo. De esta manera, se resolverán más
problemas en menos tiempo, lo cual podría generar un mejor sistema operativo más
rápidamente.

PASO 11. No borre su disco duro por completo. Recuerde; al borrar el disco podría borrar
todos sus datos irreversiblemente. Utilice el GRUB u otro gestor de arranque para que su
computadora tenga otro sistema operativo con el cual arrancar hasta que el suyo funcione por
completo.

PASO 12. Empiece con algo pequeño. Empiece con cosas pequeñas como mostrar texto e
interrupciones antes de proseguir a desarrollar cosas como gestión de memoria y multitarea.

PASO 13. Guarde una copia de seguridad de la última fuente de trabajo. Ello será una medida
de protección en caso de que surja algún problema grave con la versión actual de su sistema
operativo o su desarrollo. Si la PC se bloquea y no puede arrancar, será excelente tener una
segunda copia con la que pueda trabajar para solucionar el problema.

PASO 14. Considere probar su nuevo sistema operativo en una computadora virtual. En lugar
de reiniciar el equipo cada vez que realice cambios o tenga que transferir ciertos archivos
desde el equipo de desarrollo al equipo de prueba, podrá utilizar la aplicación de una
computadora virtual para ejecutar su sistema operativo, mientras el suyo se mantiene en
funcionamiento. Algunas aplicaciones de computadora virtual son VMWare, la alternativa
de código abierto, Bochs, Microsoft Virtual PC y xVM VirtualBox.

PASO 15. Saque un “candidato de lanzamiento”. Esto permitirá a los usuarios informarle
sobre posibles problemas con el sistema operativo.
Nota: Un sistema operativo también podría ser fácil de usar, así que asegúrase de incluir
características fáciles para el usuario, de modo que sean parte integral de su diseño.

CONSEJOS POR TOMAR EN CUENTA

▪ Después de que haya hecho todo el desarrollo, decida si quiere que el código sea
abierto o patentado.
▪ No comience un proyecto para crear un sistema operativo con el fin de empezar a
aprender programación. Si no tiene conocimientos avanzados de C, C++, Pascal u
otro lenguaje adecuado, incluida la manipulación del puntero, manipulación de bits
de bajo nivel, desplazamiento de bits, lenguaje ensamblador en línea, etc., entonces
no estará listo para desarrollar un sistema operativo.
▪ Si quiere que su sistema sea viable, su mayor prioridad tendrá que ser implementar
características de seguridad.
▪ Use los sitios web como OSDev y OSDever para que te ayuden a desarrollar su propio
sistema operativo. Tenga en cuenta que, para la mayoría de los propósitos, la
comunidad OSDev.org prefiere que se limite a hacer uso de su wiki y no participar
en el foro.
▪ Compruebe si hay posibles bloqueos y otros errores. Los errores, bloqueos y demás
problemas afectarán su proyecto del sistema operativo
▪ Si quiere que sea fácil, tenga en cuenta algunas distribuciones de Linux, tales como
Fedora Revisor, Custom Nimble X, Puppy Remaster, PCLinuxOS mklivecd, SUSE
Studio y SUSE KIWI. Sin embargo, el sistema operativo que cree le pertenecerá a la
empresa que haya lanzado primero el servicio (aunque tendrá los derechos de
distribuirlo gratuitamente, cambiarlo y ejecutarlo como quiera bajo el GPL).
▪ Recomendable hacer una partición completamente nueva para desarrollar el sistema
operativo.

También podría gustarte