Está en la página 1de 14

Actividad 2.

Diseño de la interacción
Diana López Aguilar
DISEÑO DE CONOCER SOBRE
LA INTERFAZ LENGUAJE DE
PROGRAMACION
Decidir el diseño
y por donde
empezar
ensamblador C y C++

Factores que influyen en el diseño e implementación de un S.O.

Estructura Asignación
del s.o. de
nombres

Seguridad

Rendimiento
IMPLEMENTACION
0
INTERFAZ
GRAFICA

 Interfaz gráfica atractiva, clara y fácil.


 Inicio rápido del sistema operativo.
 Accesibilidad para personas con alguna discapacidad.
 Manejo fácil del sistema de archivos.
 Estabilidad ante problemas en la ejecución de programas de
aplicación.

1
DECIDE 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 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.

2
DECIDE SI PREFIERES HACERLO TODO TÚ 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.

3
ESPECIFICA QUÉ PLATAFORMA DE PROCESADOR SERÁ
COMPATIBLE CON TU SISTEMA OPERATIVO. TE
RECOMENDAMOS LAS DOS MÁS COMUNES PARA LAS
COMPUTADORAS PERSONALES: AI-32 Y X86_64.
DECIDE QUÉ LENGUAJE DE PROGRAMACIÓN
VAS A UTILIZAR.

• Si bien es posible crear un sistema operativo con un lenguaje


como Pascal o BASIC, será mejor si usas 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.
SEGURIDA
D

La seguridad tiene dos mitades: impide el acceso a los objetos que no


tienen derecho a acceder y permite a los usuarios acceder a objetos
que tienen todo el derecho de acceso. A veces parece que los
sistemas operativos están escritas por los fascistas; por ejemplo, es
imposible compartir cualquier objeto en Unix de una manera
significativa. Otras veces, parece como si estuvieran escritos por
personas que no tienen la menor idea de lo que significa la
privacidad. La verdadera seguridad tiene muchas implicaciones.
La seguridad es una de las características más buscados en un
sistema operativo en la actualidad. Con las computadoras ahora están
utilizando para almacenar grandes cantidades de datos, a partir de la
información gubernamental de alto secreto a las empresas y hacer el
seguimiento de negocios de números de cuentas bancarias, la
seguridad en un sistema operativo es una necesidad.
DISEÑO DE LOS SISTEMAS OPERATIVOS.
MODELO CLIENTE - SERVIDOR

ESTE ENFOQUE BUSCA IMPLEMENTAR LA MAYORIA DE LAS FUNCIONES DEL


SISTEMA OPERATIVO EN PROCESOS “SERVIDORES", DEJANDO UN KERNEL
MÍNIMO.
 PARA SOLICITAR UN SERVICIO, UN PROCESO DEL USUARIO (“CLIENTE”) ENVIA LA
SOLICITUD A UN PROCESO “SERVIDOR” , QUE REALIZA ELTRABAJO Y DEVUELVE LA
RESPUESTA .
 EN ESTE MODELO, EL KERNEL BASICAMENTE SE ENCARGA DE LA
COMUNICACIÓN ENTRE CLIENTES Y SERVIDORES.
 SON ADAPTABLES A SISTEMAS DISTRIBUIDOS.
 EJEMPLOS: MINIX, MACH, AMOEBA, WINDOWS NT.

7
LOS SISTEMAS POR CAPAS O
JERÁRQUICA (ESTRUCTURA POR
NIVELES)

8
ESTRUCTURA DEL SISTEMA CAPAS (NIVELES)

Capa 5: Se encuentra la interfaz de usuario.


Capa 4: Aloja los programas de usuario.
Capa 3: Se controlan los dispositivos E/S (entrada y
salida).
Capa 2: Se administra la comunicación inter-proceso
y la consola del operador.
Capa 1: Administración de memoria y discos.
Capa 0: Correspondiente al Hardware, realizando
asignación del procesador, también alterna entre
procesos cuando ocurren interrupciones o se han
expirado y proporciona multiprogramación básica de la
CPU.
9
ASIGNACIÓ
N DE
NOMBRES
 Casi todas las estructuras de datos duraderas que utiliza un SO
tienen algún tipo de nombre o identificador (nombre de
dispositivo, de fichero, identificador de proceso, etc.)
 Es común que los nombres se asignen a dos niveles:
Externo: cadenas de caracteres (estructuradas o no) que
usan los usuarios .
Interno: identificacion usada internamente por el SO.
o Debe existir algún mecanismo que permita asociar unos
nombres con otros. Ejemplo: los directorios (enlazan nombres
de fichero con nodos-i).
o Un buen diseño debe estudiar con detenimiento cuantos
espacios de nombres van a necesitarse, qué sintaxis tendrán
los nombres, cómo van a distinguirse, etc. 10
RENDIMIENT
O

 En condiciones iguales, un sistema operativo rápido es mejor


que uno lento. Sin embargo, un sistema operativo rápido y po
co confiable no es tan bueno como uno lento pero
confiable.
 Un método general para mejorar el desempeño es sacrificar
tiempo a cambio de espacio.
 Una técnica muy conocida para mejorar el desempeño es el
uso de cachés.
 Los procesos y programas no actúan al azar; exhiben un alto
grado de localidad en el tiempo y en el espacio, y hay varias
formas de aprovechar esta información para mejorar el
desempeño.
11
TENDENCIAS EN SISTEMAS OPERATIVOS.

 Una tendencia actual es hacia los llamados Sistemas


Abiertos, lo cual indica que estos sistemas operativos
trabajan sobre una gran variedad de plataformas con
independencia de las empresas fabricantes.
 Software NO Libre: Se refiere a cualquier programa en
el que su código fuente no está disponible o el acceso a
éste se encuentra restringido. Caso: Windows.
 Software Libre: Es aquel que proporciona a los usuarios
la libertad de ejecutar, copiar, distribuir, estudiar, cambiar
y mejorar el software. Caso: Linux.

12

También podría gustarte