tipos test sobre sistemas sistema preguntas operativos operativo opcion multiple funciones caracteristicas operating-system

operating-system - test - tipos de sistemas operativos y sus caracteristicas



Si tuviera que construir un nuevo sistema operativo, ¿qué tipo de características tendría? (16)

Estoy jugando con la idea de crear un sistema operativo completamente nuevo y me gustaría escuchar lo que todos en este foro toman sobre eso? En primer lugar, es demasiado tarde si los niños grandes están tan arraigados en nuestras vidas que nunca podremos cambiar (guau, qué pensamiento tan terrible ...). Pero si este no es el caso, ¿qué debería hacer un sistema operativo por usted? ¿Qué características son las más importantes? ¿Deberían todos los componentes ser instalaciones separadas (en otras palabras, si el SO base realmente no tiene funcionalidad para el usuario y se agrega al crear "complementos" como una buena herramienta flexible?)

¿Por qué quiero hacer esto? Tengo más curiosidad acerca de si existe una demanda y me pregunto, ya que los sistemas operativos que más utilizamos hoy en día (Linux, Windows, Mac OS X (Free BSD)) en realidad fueron escritos más de Hace 20 años (y estoy siendo generoso, quiero decir que los núcleos duales y cuádruples no existían en aquel entonces, los autobuses eran mucho más lentos, el hardware era mucho más caro, etc.), tenía curiosidad por la nueva tecnología si haría algo diferente?

Estoy ansioso por leer tus comentarios.


¿Por qué construir el sistema operativo directamente en una máquina física? Simplemente estarás rebuscando en un lenguaje ensamblador;). Claro, eso es divertido, pero ¿por qué no abordar un sistema operativo para una VM?

Digamos un sistema operativo que se ejecuta en la máquina virtual Java / .NET / Parrot (lo que se llame), que se puede pasar fácilmente por la red y puede ejecutar un montón de software.

¿Qué incluiría?

  • Una forma de almacenar datos (FS tradicional no lo cortará)
  • Un modelo para procesos / hilos (o simplemente secuestrar las cosas provistas por la VM?)
  • Herramientas para interactuar con estos procesos, etc.

Por lo tanto, cree una plataforma simple que se pueda ejecutar en una máquina virtual ampliamente utilizada. Ponga algunas funcionalidades interesantes para un nicho específico (¿computación en la nube?). ¡Ir!


Creo que tienes razón sobre que nuestros sistemas operativos actuales son viejos. Alguien dijo que todos los sistemas operativos apestan. Y sí, ¿no tenemos problemas con ellos? Llámalo BSOD, Sad Mac o Kernel Panic. Nuestros sistemas de archivos fallan, hay problemas de seguridad y confiabilidad .

Microsoft siguió un enfoque interesante con su kernel Singularity. Aísla procesos en software, utilizando una máquina virtual similar a .NET y métodos de verificación formales . Básicamente, parece que todo IPC se ha especificado y verificado formalmente, incluso antes de ejecutar un programa.

Pero hay otro problema: la singularidad es solo un kernel. No puede ejecutar aplicaciones que no están diseñadas para eso. Esta es una penalización enorme, lo que hace que la transición final (Singularity no sea pública) sea bastante difícil. Si logra producir algo de ventajas técnicas similares, pero con un plan de transición real (piense en los problemas de IPv4-> IPv6, o en cómo Windows obtuvo tanto cuota de mercado en el escritorio), ¡eso podría ser enorme!

Pero comenzar con algo pequeño tampoco es una mala elección. Linux comenzó así, y hay muchos casos en que conduce a un mejor diseño. Lo pequeño es hermoso. Más fácil de cambiar Más fácil de cultivar ¡En fin, buena suerte!


En pocas palabras ... concéntrese en sus objetivos y, lo que es más importante, en los objetivos de los demás ... ayude a satisfacer esas necesidades. Nunca comience solo con tecnología.

Yo recomendaría no crear su propio sistema operativo. (Mi propia interrupción geek ... Mira en Cloud Computing y Amazon EC2 )

Estoy totalmente de acuerdo en que primero sería útil definir cuáles son tus objetivos. Soy un gran admirador de User Experiences y pienso no solo en sus propios objetivos, sino también en los objetivos de su público / usuarios / otros. Una vez que tenga esos objetivos, continúe con el próximo paso para cumplirlos.

Ahora, ¿qué es un sistema de operación de alguna manera? kernal, sistema operativo, instancia de servidor virtual, Linux, servidor Windows, Windows Home, Ubuntu, AIX, zSeries OS / 390, et al. Supongo que esta es una buena definición de OS ... Wikipedia

Me gusta el lema de Sun "la red es la computadora" también ... pero su compañía realmente ha caído en la última década.

En esa nota de la red está la computadora ... nuevamente, lo recomiendo, revisando Amazon EC2 y más generalmente la computación en la nube .


Es posible que primero desee unirse a un proyecto de implementación de SO existente o, al menos, ver lo que otras personas han implementado.

Por ejemplo, AROS lleva más de 10 años fabricándose como un sistema operativo de hobby, y ahora es bastante útil en muchos sentidos.

¿O qué tal algo más nicho? Eche un vistazo a Symbios, que es un sistema operativo de escritorio totalmente multitarea (en el estilo de Windows) - para CPU Z80 de 4MHz (Amstrad CPC, MSX). Tal vez quieras escribir algo como esto, que es mucho menos que un sistema operativo completo de próxima generación.


Para obtener más información sobre el kernel micro versus monolítico, busque la "discusión" de Linus con Andrew Tanenbaum.


Para responder la primera pregunta: nunca es demasiado tarde. Especialmente cuando se trata de segmentos de nicho de mercado y cosas así.

En segundo lugar, antes de comenzar a crear un nuevo sistema operativo, debe comprender el tipo de empresa que es: sería un proyecto masivo.

¿Es solo un programa tipo "scratch the itch" del programador normal? Si es así, entonces, por supuesto, adelante, puede aprender muchas cosas al hacerlo. Pero si lo hace por el producto resultante, entonces no debe comenzar por ese camino hasta que haya analizado todos los sistemas operativos en desarrollo (hay mucho más de lo que pensaría al principio) y descubrió qué te gustaría cambiar en ellos

Es muy posible que el esfuerzo sería mejor empleado para mejorar / cambiar un sistema de código abierto existente. Incluso para su propia experimentación, puede ser más fácil obtener los resultados que desea si comienza con algo que ya está en desarrollo.


Sugeriría mirar una versión temprana en Linux (0.01) para al menos mojarme los pies. Te vas a dedicar al ensamblaje y cosas de bajo nivel muy oscuras para empezar (especialmente entrar en modo protegido, multitarea, etc.). Y sí, probablemente sea cierto que los "grandes" ya tienen el mercado acorralado. No te estoy diciendo que NO lo hagas, pero tal vez hacer algún trabajo en el kernel de Linux sería un mejor trampolín.


Un sistema operativo no debería tener ninguna funcionalidad de usuario. La funcionalidad del usuario debe ser agregada por proyectos separados, ¡lo cual no significa que los proyectos no deberían funcionar juntos!

Si está interesado en la funcionalidad del usuario, debería considerar participar en proyectos de entorno de escritorio existentes, como GNOME, KDE o algo así.

Si está interesado en la funcionalidad a nivel kernel, intente hackear un derivado de BSD o en Linux, o intente crear su propio sistema, pero no piense demasiado en la funcionalidad del usuario. Lograr que funcione el núcleo de un sistema operativo es difícil y tomará mucho tiempo. Querer reinventar todo no tiene mucho sentido y no te llevará a ninguna parte.


proyecto de singularidad de pago, hacer algo revolucionario


Creo que construir un nuevo SO desde cero para que se parezca a los sistemas operativos actuales en el mercado es una pérdida de tiempo. En cambio, debe pensar en cómo será el sistema operativo dentro de 10-20 años. Mi intuición es que serán tan diferentes que los volverán casi irreconocibles según los estándares actuales. Piense en marcos tales como Facebook (¡jadeo!) Para modelos de cómo funcionarán los sistemas operativos futuros.


Siempre he querido un sistema operativo que básicamente no era más que una nueva lista. Habría incorporado un complemento que te permite construir la interfaz de usuario, las aplicaciones, lo que quieras.

Este sistema funcionaría como un sandbox de Lua para que un juego funcione, menos las limitaciones. Podría construir un complemento o sistema modular que tendría acceso a una variedad de subsistemas que usaría. Por ejemplo, si tuviera que escribir una aplicación de navegador web, necesitaría cargar la biblioteca de red y usarla en su script de complemento. ¿Necesitas ''seguridad''? Cargue la biblioteca.

La diferencia entre esto y Linux es que Linux es un sistema operativo, pero tiene un administrador de Windows que funciona por encima. En este sistema operativo teórico, podría implementar el "aspecto" genérico y la "sensación" de una variedad de ventanas dentro del sistema de complementos, o podría crear una interfaz personalizada.

La diferencia entre esto y Windows es que es completamente personalizable, y me refiero a que si no desea implementar ninguna criptografía, puede hacerlo, o si desea personalizar una ventana ya existente, puede hacerlo. Nada está cerrado para ti.

En este sistema operativo teórico, hay un sistema operativo con un sistema de complemento. El sistema de complemento usa un lenguaje simple y poderoso.


Primero, una pequeña historia. En 1992, durante la primera conferencia de Win32 (que se convertiría en la MS Professional Developers Conference), tuve la oportunidad de sentarme a almorzar con un tal Mr. Dave Cutler (Arquitecto Jefe de lo que la mayoría de la gente ahora conocería como Windows NT, Windows 2000, XP, etc.).

En ese momento estaba trabajando en el grupo Multimedia de IBM Boca Raton en lo que algunos de ustedes recordarán, OS / 2. Habiendo trabajado en OS / 2 durante varios años, y reconociendo "la escritura en la pared" de dónde estaban pasando los sistemas operativos, le pregunté: "Dave, Windows NT nos llevará al próximo siglo o hay otras ideas sobre su mente? ". Su respuesta para mí fue la siguiente:

"M ... ¡Windows NT es el último sistema operativo que alguien desarrollará desde cero!". Luego me miró, tomó un sorbo de su cerveza y dijo: "De nuevo, podrías despertar el próximo sábado después de una noche particularmente buena con tu chica, y tener un enfoque completamente nuevo para un sistema operativo, eso". Lo avergonzaré ".

Poniendo esa conversación en contexto, y dado el hecho de que estoy de vuelta en la universidad persiguiendo mi maestría (que se especializa en el diseño de sistemas operativos), diría que hay TONELADAS de espacio para nuevos sistemas operativos. El asunto es poner las cosas en perspectiva. ¿Cuáles son sus objetivos para este sistema operativo? ¿Qué problema tiene el espacio tratando de dar servicio?

Poner todo esto en perspectiva le dará una indicación de si realmente está fijando su vista en un objetivo alcanzable.

Habiendo dicho todo eso, secundo una nota anterior de comentaristas sobre investigar cosas como "Singularity" (el foco de una charla que di la primavera pasada en una de mis clases ...), o si realmente quieres "hundir tu dientes en "un sistema operativo en su infancia ... mira" ReactOS ".

Por otra parte, WebOSes, como gOS, y similares, son probablemente hacia dónde nos dirigimos durante la próxima década más o menos. O, una vez más, alguien especialmente brillante podría despertarse después de una noche particularmente fructífera con su amiga o amigo y tener la "próxima gran idea" en los sistemas operativos.


También podría considerar ir con MINIX, que es un buen punto de partida.


Al creador de este foro, le felicito señor por atreverse a pensar en términos mucho más audaces e idealistas con respecto a la industria de TI. En primer lugar, sus preguntas son precisamente del tipo que usted pensaría que deberían involucrar a un público mucho más amplio, dado el florecimiento de las Ciencias de la Computación en todo el mundo y la apertura que nos ha enseñado el Sistema Operativo Revolucionario Linux, que solo ha comenzado a ganar los corazones y las mentes de tantos por fortalecer su interfaz fácil de usar. Así que felicitaciones por empujar el sobre.

Si sigo correctamente, supones que dados los frutos de nuestro trabajo hasta el momento, el desarrollo de brebajes adicionales de hardware y software podría o al menos debería ser menos convencional. La implicación, por supuesto, es que cualquier nuevo desarrollo alcanzaría su objetivo más rápido de lo que es típico. Sin embargo, la perspectiva de un sistema operativo totalmente nuevo en este momento sería un desafío, por decir lo menos, solo porque existe mucha fricción entre Linux y Windows. Es realmente una batalla entre el código abierto y las ideologías propietarias. Bart Roozendaal en un comentario anterior prueba mi punto muy bien. Olvídese de la idea de la innovación y de las posibilidades que puedan surgir de un sistema operativo mucho más contemporáneo, ya que estas cosas son secundarias. Lo que está preguntando esencialmente es, ¿vas a estar del lado de las ganancias o no? Él le da su posición lejos fácilmente aquí. Como saben, Windows es famoso por su enfoque monopolístico con respecto a nuevos mercados, software y otras tecnologías. Ha mantenido una garra de la muerte en su hegemonía desde su existencia y, lamentablemente, el windows os está atormentado por interminables errores y puertas traseras.

Una vez más, te aplaudo por tomar un camino menos transitado y con suerte avanzar y no desanimarte. Personalmente, me gustaría ver otro sistema operativo por ahí ... uno mucho más contemporáneo.


Si me preguntas qué me gustaría ver en un sistema operativo, puedo darte una lista. Estoy empezando a programar, así que no estoy seguro de si algo de esto es posible, pero puedo darte mis ideas.

  1. Me gustaría ver un sistema operativo desarrollado (además de los principales) en el que NO ES difícil conseguir que la tarjeta inalámbrica funcione. Esa es mi principal preocupación con la mayoría de los que probé.

  2. Sería genial ver un sistema operativo diseñado por un programador para otros programadores. Tenerlo para poder ejecutar programas para todos los diferentes sistemas operativos. No sé si eso es posible sin tener una copia de Windows y OSX, pero sería realmente increíble si pudiera verificar la compatibilidad de los programas que escribo con todos los sistemas operativos.


Eche un vistazo a Cosmos y Singularity , estos representan lo que quiero de un sistema operativo futurista ;-) Editar: SharpOS es otro esfuerzo administrado del sistema operativo. Sugerido por yshuditelu