DPSO_U4_A1_JAMG
Short Description
Descripción: sistemas operativos...
Description
2017 ELABORADO POR: MUÑOZ GONZÁLEZ JAZMÍN MATRÍCULA: ES1611316716
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MÉXICO PROGRAMA EDUCATIVO: DESARROLLO DE SOFTWARE NIVEL: LICENCIATURA DOCENTE: GÓMEZ PÉREZ CARMEN
PROGRAMACIÓN DE SISTEMAS OPERATIVOS UNIDAD 4. ACTIVIDAD 1. ELEMENTOS DEL DISEÑO DE UN SISTEMA OPERATIVO.
“Proyecto de sistema operativo” “El diseño de sistemas operativos es más un proyecto de ingeniería que una ciencia exacta” [1]. Para poder diseñar con éxito un sistema operativo, los diseñadores deben tener una idea clara de lo que quieren. La falta de una meta dificulta sobremanera la toma de decisiones subsiguientes; es por ello que tener metas claras es indispensable a la hora de diseñar un sistema operativo. Tipo de sistema operativo y el contexto en el que se ubica: El importante señalar que el sistema operativo a diseñar, se encarga de crear el vínculo entre los recursos materiales, el usuario y las aplicaciones. De manera que los recursos del sistema sean optimizados para dar soporte a los requerimientos. El sistema debe de brindar comodidad, para que el ordenador sea fácil de usar; debe ser eficiente, permitiendo el uso de los recursos del sistema y debe tener la capacidad de evolucionar; permitiendo el testo, el desarrollo efectivo y la introducción de nuevas funcionalidades sin interferir con el servicio. El sistema operativo tendrá la característica de ser multiusuario, lo cual permite que dos o más usuarios utilicen sus programas al mismo tiempo; y multitarea para permitir que varios programas se ejecuten al mismo tiempo. El sistema administrará la distribución del procesador entre los distintos programas por medio de un algoritmo de programación. En cuanto a seguridad se encargará de la seguridad en relación con la ejecución de programas garantizando que los recursos sean utilizados sólo por programas y usuarios que posean las autorizaciones correspondientes.
[1]. Tanenbaum, A. (2009). Sistemas operativos modernos. Tercera edición. México: Pearson educación. Recuperado de https://norbertomn.files.wordpress.com/2013/09/sistemasoperativos-modernos.pdf
PROGRAMACIÓN DE SISTEMAS OPERATIVOS 1
La organización modular es la forma como se organizara el sistema operativo para colocar los parámetros en lugares bien definidos. Recopilación de información para el análisis inicial sobre el diseño del sistema operativo: 1. ¿Cuáles son las necesidades del usuario? 2. ¿Cuál es el costo estimado del desarrollo de un sistema operativo? 3. ¿Cómo se construirá el sistema? 4. ¿Qué tipo de soportes incorporará? 5. ¿Qué tipo de sistema se desarrollará? 6. ¿Cuál es el tiempo estimado de desarrollo? 7. ¿Se cuentan con los recursos necesarios para el desarrollo? 8. ¿Es necesario un estudio de usabilidad e interacción? 9. ¿Cuáles con las herramientas necesarias para la construcción del nuevo sistema? 10. ¿Qué componentes son los más adecuados para el sistema? 11. ¿Cuál es el nivel de rendimiento en tiempo de respuesta? 12. ¿Cómo se asignará la administración de paquetes? 13. ¿Qué tipo de esquema es necesario para la configuración correcta del kernel? 14. ¿Existen aplicaciones que se ajustan a las necesidades del sistema? 15. ¿Con qué tipo de potencia trabajará el microprocesador? 16. ¿Qué tipo de usuarios manipularan el sistema? 17. ¿Con que nivel de organización debe contar el sistema operativo? 18. ¿Qué tipo de arquitectura es necesaria para el nuevo sistema? 19. ¿Cuál es el nivel de protección necesario para el desarrollo? 20. ¿De qué manera se controlarán los fallos del sistema? 21. ¿Qué tipo de partición se necesita para los usuarios? 22. ¿Qué tipo de transacciones procesara? 23. ¿Qué nivel de programación es necesario para el manejo de la memoria?
PROGRAMACIÓN DE SISTEMAS OPERATIVOS 2
24. ¿Se puede reutilizar el código de un sistema operativo ya existente? 25. ¿Qué tipo de aplicaciones son compatibles con el nuevo sistema? 26. ¿Cuáles son los procesos que manipulara el back-end? 27. ¿Qué técnica de programación es necesaria para el desarrollo del sistema? Recopilación de las bases principales para iniciar el diseño: Diagrama de Gantt Plan de acción para la elaboración del diseño Programa: Módulo/Curso: Objetivo: N°
Etapas
Responsable de la etapa cargo/área
01 Abstracción 02 Amplitud de funciones y administrador de errores
03 Estandarización 04 Protección al sistema operativo 05 Control de fallos 06 Administración del hardware
Medios/recursos
Cronograma
Visita (a manera de entrevista) a los usuarios potenciales del nuevo sistema. Validación de los requerimientos (con el equipo de desarrollo). Verificación de rutinas que evitan pérdidas en el control de tareas. Investigar y determinar la mejor forma para alcanzar el objetivo del proceso. Plan de reducción, supervisión y gestión del riesgo. Verificar la comunicación entre procesos distribuidos y coordinación entre procesos. Comprobación de la distribución del procesador por medio de un algoritmo de programación.
________________________________ Responsable del proyecto
___________________ Lugar y fecha
PROGRAMACIÓN DE SISTEMAS OPERATIVOS 3
Elementos para diseñar un sistema operativo. o
La conectividad del sistema debe tener la propiedad como objeto de conectarse o comunicarse con otro, para facilitar la transferencia de información.
Para ello es fundamental considerar el sitio de trabajo, para un red particular que tiene exhibiciones high-end, sistemas con varios CPU, grandes cantidades de RAM u otros componentes requeridos para las tareas de proceso de datos especiales, gráficos o usos intensivos de los recursos. o
Los sistemas orientados a objetos utilizan características como la carga dinámica de clases, clases abstractas, herencia y subclases para que los objetos colaboren entre sí.
Por ejemplo, todos los objetos son la abstracción de un concepto, ocultando su diseño interno y proporcionando un conjunto de operaciones a través de las cuales puede usarse, impidiendo de esta manera el acceso directo al mismo. o o
La aplicación cliente/servidor debe considerar que es un modelo que implica productos y servicios enmarcados en el uso de la nueva tecnología. De tal manera que pueda ser usada por todas las aplicaciones de internet/intranet. En la actualidad la evolución de los sistemas inteligentes se basa en estar conectados a otro dispositivo (M2M, comunicación máquina a máquina) o en especial a internet. Por lo cual es importante considerar que servicios va a ofrecer el nuevo sistema, resaltando la posibilidad de utilizar sistemas operativos potentes que ya realizan numerosas tareas, con características orientadas a objetos. Elementos de diseño para iniciar con un sistema operativo: a) Transparencia: Debe ser visto tanto por el usuario como por el programador como un sistema convencional de tiempo compartido. b) Flexibilidad: Debe extraer todos los servicios fuera del núcleo del sistema y disponerlos en procesos de usuario, que puedan residir en máquinas diferentes.
PROGRAMACIÓN DE SISTEMAS OPERATIVOS 4
c) d) e) f) g) h)
Debe ofrecer actualizaciones en base a parches de forma automática. Monolítico: Debe contar con módulos grandes en el núcleo, que interactúen entre sí, para que las diferentes partes del kernel sean compiladas por capas. Micro núcleo: Es necesario que cuente con un pequeño núcleo (micro núcleo) para ampliaciones modulares, donde las funciones esenciales deban permanecer en él. Confiabilidad: Debe de ofrecer intervalos de tiempo promedio que se tarda en reparar un error, ya que estos pueden afectar la disponibilidad de la solución. Desempeño: Es importante que determine con que efectividad administrara los recursos del sistema. Escalabilidad: Debe ofrecer la posibilidad de agregar equipo incrementando a un clúster existente cuando la carga de estos supera las capacidades para ofrecer un rendimiento adecuado. Portabilidad: Debe permitir las dependencias entre los dispositivos y el sistema, de manera que se pueda mover y utilizar en cualquier máquina.
Características diferenciales Nivel de abstracción: Es la forma donde se podrá seleccionar e interconectar los componentes de hardware para crear un sistema según los requerimientos de funcionalidad, rendimiento y costo. Debemos considerar características como: que corra sobre múltiples arquitecturas de hardware y plataformas, que sea compatible con aplicaciones, que reúna los requisitos para la seguridad, que sea adaptable al mercado global soportando código Unicode y que sea de memoria virtual. Evolución del diseño: El sistema deberá de innovar de acuerdo a los nuevos requerimientos del usuario, pues es una realidad que las interfaces del futuro estarán programadas como nuestro cuerpo. Por lo cual el sistema se controlara con una mezcla de pensamientos, ordenes vocales y gestos, los cuales serán procesados de manera concurrente y armoniosa.
PROGRAMACIÓN DE SISTEMAS OPERATIVOS 5
Dificultades y obstáculos en el diseño e implementación de un sistema operativo. Para diseñar un sistema operativo es necesario considerar que ya no se parecen a lo que comúnmente conocemos, es decir pequeños programas de aplicación, ya que estos se han convertido en programas extremadamente grandes, para poder manejar múltiples usuarios y dispositivos. El hardware nos emociona porque se puede tocar, porque se puede poseer. Es estilo, es moda de silicio y metal. Pero sin un una capa de programas en su interior, sin un sistema operativo potente, el hardware no es más que bisutería costosa. Por tanto la capacidad de un sistema operativo de adaptarse, ofreciendo aplanamiento y simplicidad en las interfaces de manera que se vuelva accesible y adaptable, es una tarea ardua si se trata de un diseño de nueva creación, que deberá competir con lo ya existente en el mercado y las mejoras en rendimiento son de las principales características que debe poseer. Reflexión Los aspectos a considerar para el diseño de un sistema operativo se basan primordialmente en los requerimientos del usuario, ya que este es el diseñador del sistema en la fase inicial. Es el encargado de definir las funciones y procesos que son necesarios para desarrollar sus actividades. Partiendo de estos requisitos se definen aspectos como el espacio de memoria, los dispositivos de entrada/salida, la administración de archivos, la seguridad y protección. Sin olvidar los recursos financieros y humanos que se involucran en el diseño. Antes de diseñar un sistema se debe considerar el uso de código de acceso libre, ya que de esta manera se generaría un nuevo proyecto a partir de uno existente. En el cual el desarrollador se enfocaría en ofrecer mejoras al sistema y minimizar los riesgos de colapso. En mi opinión personal me interesa la seguridad que ofrece los sensores de movimiento para bloquear los equipos de cómputo en el momento que el usuario se aleje de la PC. Con lo cual se podría resguardar la información de manera más privada, pues los niveles de seguridad se incrementarían al reconocer a cada usuario que manipule la pc.
PROGRAMACIÓN DE SISTEMAS OPERATIVOS 6
Conclusión En la creación de un sistema operativo considero necesario contar con un buen equipo de trabajo, para dividir el diseño de cada parte que conforme el sistema en módulos. Ya que es una labor ardua y se necesitan los conocimientos necesarios en el área de investigación, para poder satisfacer las demandas del usuarios final sin perder de vista el diseño personalizado de los creadores y su interacción con el sistema. Es importante hacer reuniones de trabajo semanales para verificar el avance de cada etapa y si es necesario consumir más recursos, así como validar los gastos que esto genere en la organización. Fuentes de consulta [1]. Tanenbaum, A. (2009). Sistemas operativos modernos. Tercera edición. México: Pearson educación. Recuperado de https://norbertomn.files.wordpress.com/2013/09/sistemas-operativos-modernos.pdf
Cáceres, E. A. (2014). Análisis y Diseño de Sistemas de Información. Archivo online. Recuperado de http://www.facso.unsj.edu.ar/catedras/ciencias-economicas/sistemas-de-informacion-II/documentos/aydise14.pdf Quero, C. E. (2002). Sistemas Operativos y Lenguajes de Programación. México: Ediciones Paraninfo. Recuperado de http://librospdf.gratis/libro-sistemas-operativos-y-lenguajes-de-programacion/HBCxHO8j9ZctcB4dc57x9O4Y9ZC/ Wolf, G., Ruiz, E., Bergero, F. y Meza, E. (2015). Fundamentos de Sistemas Operativos. México: Universidad Nacional Autónoma de México. Recuperado de http://ru.iiec.unam.mx/2718/1/sistemas_operativos.pdf
PROGRAMACIÓN DE SISTEMAS OPERATIVOS 7
View more...
Comments