introducción y componenetes del sistema operativo

Post on 09-Jul-2015

130 Views

Category:

Education

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Introducción y componentes, tipos de sistemas operativos, estructura general del computador y de un sistema informático, estructura y operaciones del un sistemas operativo, gestión de procesos, gestión de memoria, gestión de almacenamiento, sistemas de E/S, protección y seguridad, estructuras de sistemas operativos, diseño e implementación del S.O, estructura del sistema operativo, máquinas virtuales.

TRANSCRIPT

CARRERA DE INGENIERIA EN SISTEMAS

Docente:

SISTEMAS OPERATIVOS

Periodo:

Ing. Freddy Patricio Ajila Z.

septiembre 2013 – febrero 2014

1

AREA DE LA ENERGÍA LAS INDUSTRIAS Y LOS RECURSOS NATURALES NO RENOVABLES

Email: fpajila@unl.edu.ec

Primera Parte:

Introducción y Componentes

OBJETIVO

1. Proporcionar una visión general de los

principales componentes de los sistemas

operativos y describir los servicios que

proporciona a los usuarios, a los procesos y a

otros sistemas

1. Que es un sistema

operativo?

Es un programa que actúa como un

intermediario entre el usuario y hardware de

una computadora, este programa administra

el hardware de una computadora y

proporciona las bases para los programas de

aplicación.

1.1 Puntos de vista de los S. O

Básicamente hay dos visiones para definir un S.O.:

1.- Máquina virtual: presenta una abstracción del HW

subyacente más sencilla y fácil de usar, ocultando sus

peculiaridades presta una variedad de servicios que los

programas utilizan mediante instrucciones especiales, i.e.,

llamadas al sistema.

2. Administrador o controlador de recursos:

Administra todos los elementos del ordenador reparte de

forma ordenada y controlada los elementos del sistema

entre los programas que los solicitan.

1.2. Esquema de componentes de un S. I.

1.2. Esquema de componentes de un S. I.

Esquema de llamadas alsistema

… Continua esquema de componentes de un S. I.

El sistema informático se puede dividir en cuatro componentes:1.- Hardware - Proporciona computación básica recursos de CPU, memoria, dispositivos de E / S

2.- Sistema operativo.- controla y coordina el uso del hardware entre diferentes aplicaciones y usuarios.

3.- Programas de aplicación.- Definen la forma en que los recursos del sistema se utilizan para resolver los problemas de computación de los procesadores de los usuarios de Word, compiladores, navegadores web, sistemas de bases de datos, video juegos

4.- Usuarios.- personas, máquinas, otros equipos.

1.3 Historia de los S.O

1. Primera Generación (1945–1955): Válvulas y conexiones. No existen los S.O/ computadoras con 300 tubos al

vacío(BULBOS) ENIAC• Grupo de personas diseñaba, construía, programaba,

operaba y mantenía la máquina• Se introduce las Tarjetas perforadas, instrucción a

instrucción, lenguaje máquina• Miles de cables a tablero de conexiones

Charles Babbage (1792-1871 Máquina Analitica “Mecánica”)

Ada Lovelace Primera programadora del mundo, lenguaje ADA

ENIAC

2da Generación (1955–1965): Transistores ysistemas de procesamiento por lotes

. 1eros Sistemas Operativos Lenguaje Foltran

. Procesamiento por lotes agrupando trabajos a ⇒ejecutar

. Monitor Residente: Intérprete de tarjetas, Cargador de programas, Controlador de E/S

Buffers. Almacenamiento intermedio entre dispositivos de E/S y

CPU, desde donde lee/escribe la CPU

. Cuando la CPU lee los datos del buffer pasa a trabajarcon ellos A su vez, el dispositivo de E/S inicia lasiguiente lectura Dispositivo y CPU trabajando a la vez

. Ideal si velocidad de CPU es ≈ E/S

3era Generación (1965–1980): Circuitos integradosy multiprogramación

. Multiprogramación.- Varios trabajos en memoria: cuando uno espera para E/S, otro se puede ejecutar Necesidad de planificación y protección

. Tiempo compartido (multitarea)Variante del anterior Cambio rápido entre tareas: uso InteractivoMás complejo

. Increíble crecimiento de computadoras

Ejemplos de S.O.: OS/360, MULTICS, UNIX, etc.

IBM/360 MODELO 30

IBM/360

4rta Generación (1980–A la Fecha): ComputadoresPersonales

. IBM toma la iniciativa, contacto con BILL GATES

. BILL GATES compra DOS (Disk Operating System) Creado por Seattle Computers Product(Tim Perterson) en $75.000 y crea DOS/BASIC, y a su Vez MS-DOS (Microsoft System-DOS)

. Xerox Crea la primera GUI (Interfaz gráfica de Usuario)

. Steve Jobs co-Inventor de la computadroa de Apple, crea la Apple Macintosh en base a la idea de Xerox, amigable para el usuario (S.O. FreeBSD derivado del Unix)

. BILL GATES crea Windows Me, Windows 2000, Windows NT y todas sus versiones

. Unix genera el X11 basado en Ventanas luego Linux, e implementa S.O para servidores (Centos, Fedora, Redhat)

4rta Generación (1980–A la Fecha): ComputadoresPersonales

. Se desarrollan Sistemas Operativos en Red y Sistemas Operativos Distribuidos(compuesto por varios procesadores, los usuarios no saben donde se ejecutan sus programas o archivos)

2. TIPOS DE SISTEMAS

OPERATIVOS

➔Son los S.O mas potentes➔La dif con las PC es su gran capacidad de E/S➔Pueden tener 1000 o mas discos y millones de GB datos➔Una mainframe puede ocupar un cuarto completo, hoy presentes en Data Centers.➔Hoy están figurando como Serv Web de alto redimiento (por ej. Google, Youtube, Facebook), Serv p' sitios de comercio electrónico a gran escala (Paypal, ClickBank)➔Ejecutan cientos de tareas a la vez, la > parte requiere muchas operaciones de E/S.Ofrecen 3 tipos de servicios: procesamientos x lotes, procesamiento de transacciones y tiempo compartido

2.1 Sistemas Operativos de mainframe

➔Ofrecen 3 tipos de servicios:

➔procesamientos x lotes: procesa trabajos de rutina sin acción del usuario (ej. Backup B.D sist finacieros)procesamiento de transacciones: manejan grandes cantidades peq transacciones (ej. Reservaciones en una aerolinea)Procesamiento de tiempo compartido: varios usuarios remotos ejecutan tareas en la computadora al mismo tiempo(ej. Consultas a una gran B.D, google)

Ejemplo de S.O.: OS/390 descendiente del OS/360, gradualmente estan siendo reemplazados x variantes de UNIX como Linux (SUSE Linux Enterprise Server).

… Continua S.O de mainframe

➔Se encuentran en un nives + abajo del S.O de mainframes.

➔S.O. de servidor.- Los servidores pueden ser PCs muy potentes o incluso mainframes.

➔Dar servicio a múltiples usuarios a través de la red y permiten compartir recursos HW y SW.

➔Prestan servicios de impresión, de ficheros o de Web.➔Los ISP utilizan para: S. Web, S.Correo, S.DNS, S.Proxy, etc

S.O comunes son: UNIX (Linux (Centos, Debian, Fedora), FreeBSD, Solaris), Windows server 200x

2.2 Sistemas Operativos de servidores

➔Conectan varias CPU en un solo sistema.➔Conocidas como computadoras paralelas, multicomputadoras o multiprocesadores.➔Suelen ser S.O. de servidor, con funciones añadidas especiales para comunicación y conectividad➔Poseen chips multinucleo (PC, portatiles)➔Esprobable que el n° nucleos aumente con el tiempo

S.O comunes: Windows y Linux

2.3 Sistemas Operativos de multiprocesadores

S.O. para ordenadores personalesTodos los S.O modernos soportan la multiprogramación

Su misión es presentar un buen soporte para un único usuario.Su principal uso procesamiento de textos, hojas de ⇒cálculo, acceso a Internet, etc.

S.O comunes: Windows (XP, Vista, 7), Linux, Macintosh

2.4 Sistemas Operativos de computadoras personales

2.5 Sistemas Operativos Computadoras de bolsillo

➔Son cada vez más pequeños➔PDA (Personal, Digital, Assitant, Asistente personal digital) ➔PDA tiene funciones limitadas (libreta de direciones ➔Electrónica, bloc de notas)➔Telefonos celulares similares a PDAs sin teclado y pantalla➔Usan CPUs de 32 bits➔Sofisticado S.O (telefonía, fotografía digital, y otras func). ➔Ejecutan aplicaciones desarrolladas por terceros➔S.O disp bolsillo se asemejan a S.O de PC de hace 10 años.➔Diferencia entre PC y disp bolsillo es q el 1ro disco duro cientos GB➔Dos S.O mas populares son Symbiam OS, Palm OS, IOS y ANDROID.

2.6 Sistemas Operativos en tiempo real

➔El tiempo es un parametro clave➔Utilizados en sist control procesos industriales➔Recogen datos del proceso de producción para controlar maq fabrica.➔Son sistemas en tiempo real duro (acciones en tiempo preciso, por ej➔robot soldador de autos, procesos industriales controlando máquinas de producción, controladores de aviación, centrales nucleares, etc)➔Son tamb sistemas en tiempo real suave (ocasionalmente pueden➔fallar en un tiempo determinado por ej, sist de audio digital, multimedia➔telf digitales)➔S.O comp bolsillo, sist integrados tienen caract de tiempo real suave➔S.O integrados y tiempo real solo ejecutan soft de los diseñadores➔S.O de comp bolsillo y S.O integrados diseñados p' consu finales➔S.O tiempo real adecuados para uso industrial.➔S.O conocidos e-Cos, VxWorks y QNX

2.7 Sistemas Operativos de tarjetas inteligentes

➔Son los S.O más pequeños con restriciones de procesamiento ymemoria➔Contienen un Chip de CPU➔Algunas tarjetas se energisan con lector➔Poseen limitadas funciones, hasta una solo por ej, pagos electronicos➔Algunas tarjetas inteligentes funcionan con java (ROM tiene interpreteJVM)➔Varios applets en ejecución conlleva al multiprocesamientoy la nececidad de planificación.

2.8 Clasificación de los S.O

Actividad Practica n°1

Comparación de tipos de S.O

➔Nombre S.O➔Tipo➔Rendimiento (Monousuario, multiusuario, multiprocesamiento, shellprogramable, etc)➔Usos frecuentes ➔Costo➔Requisitos de sistema➔Fecha del lanzamiento

3. Estructura General del

computador y de un Sistema Informático

Existen cuatro componentes estructurales principales:

Unidad Central de procesamiento (CPU): Controla el funcionamiento del computador y se encarga del procesamiento de datos.

Memoria principal: Almacena Datos

E/S : Transfiere datos entre el computador y el entorno externo

Sistema de Interconexión: proporciona la comunicación entre la CPU, memoria principal y la E/S.

3.1 Estructura del Computador

Grafica de la estructura del Computador

El componente mas complejo e interesante es la CPU y sus principales componentes estructurales son:

Unidad de Control: Controla el funcionamiento de la CPU y por lo tanto de todo el computador.

Unidad aritmético-lógica (ALU): Es la encargada del procesamiento de datos del computador.

Registros: Proporcionan almacenamiento interno a la CPU.

Interconexiones CPU: son los mecanismos que proporcionan comunicación entre la unidad de control, la ALU y los registros.

Grafica de los componentes del la Unidad Central de Procesamiento o CPU

Grafica de los componentes de la unidad de control

Existen cuatro funciones básicas que un computador puede llevar a cabo:

➔Procesamiento de datos

➔Almacenamiento de datos

➔Transferencia de datos

➔Control

Funciones generales del computador

3.2 Estructura del sistema informático

Actividad Practica n°2

Esquematize la estructura básica del computador➔Explique desde su perspectiva que funciones principales realizanestos componentes➔Grafique y explique la arquitectura que tiene un procesadormultinucleo (INTEL y AMD)

4. Estructura y operaciones del un Sistemas Operativo

Gráfica de la estructura funcional del sistema operativo

4.1 Estructura del S.O

El sistema Operativos es la plataforma donde se ejecutan los programas.

• Multiprogramación:Incrementa el uso de la CPUOrgaziza los trabajos p'CPU ejecute almenoos

uno.Mantiene un subconjunto de trabajos del

conjunto de trabajos que estan en la cola de espera.

La cola se encuentra en discoUn trabajo puede esperar para completar una

tarea (op E/S) pero la CPU cambia de trabajo y ejecuta otro.

… Continua estructura de S.O

Los sistemas multiprogramados aprovechan eficazmente los recursos del sistema (CPU, memoria y Periféricos)

Tiempo compartido o multitarea es una extensión lógica de la multiprogramación.

Un S.O. De tiempo compartido permite que muchos usuarios comparta simultaneamente la computadora.

… Continua estructura de S.O

Tiempo compartido.- es asignar un tiempo pequeño de CPU para cada usuario.

• Sistema de tiempo compartido = Multiprogramación + Planificación de la CPU

Un programa cargado en memoria y en ejecución se denomina Proceso

… Continua estructura de S.O

Como la RAM es pequeña para cargar todos los trabajos, estos se mantienen inicialmente en disco, en la cola de espera

• Planificador de trabajos.- decide que trabajos es cargado de memoria virtual a memoria principal

• Gestión de memoria.- organiza el espacio de memoria para los programas que han sido cargado o van hace cargados

… Continua estructura de S.O

Planificador de la CPU .-decide que trabajo cargado en memoria va hacer ejecutado.

• Gestión de Archivos.- Administra información de /los Discos Duros

•• Mecanismos de Protección.- Protección de

recursos del sistemas.

… Continua estructura de S.O

Los S.O modernos operan mediante interrupciones (instrucciones de E/S) y

Excepciones: Errores que pueden generar los programas en ejecución.

Operación en modo dual = Modo usuario y Modo supervisor.

Cuando se ejecuta una aplicación de usuario el S.O. se encuentra en modo usuario; sin embargo cuando dicha aplicación solicita un servicio del S.O. A través de una llamada al sistema pasa de modo usuario a modo supervisor

TODOS LOS SISTEMAS OPERATIVOS MODERNOS TRABAJAN EN MODO DUAL

...Continua operaciones del S.O

...Continua operaciones del S.O

TEMPORIZADOR: evita que un programa de usuario entre en un bucle infinito, asegurando de esa manera que el S.O. Mantenga siempre el control de la CPU.

El temporizador impide que un programa de usuario se ejecute durante un tiempo excesivo

...Continua operaciones del S.O

5. Gestión de Procesos

Programa en ejecución = ProcesoUn proceso necesita ciertos recursos como

CPU, Memoria, archivos y Dispositivos de E/S.

Los procesos pueden ser: Procesos del Sistema Operativo(Aquellos que ejecutan códigos del sistema) y procesos de usuario (Aquellos que ejecutan código de usuario)

Actividades del la gestión de procesos.-

- Crear y eliminar los procesos de usuario y del sistema

- Suspender y reanudar los procesos- Proporcionar mecanismos para la

sincronización de procesos- Proporcionar mecanismos para la

comunicación entre procesos.-Proporcionar mecanismos para el

tratamiento de los interbloqueos

➔ Matriz de palabras con cientos de miles de millones de posiciones distintas.

➔ Cada palabra (instrucción o dato) tiene una dirección de memoria distinta.

● La memoria es compartida por la CPU y los dispositivos de E/S (DMA)

●Ej DMA: bloques de datos de periferico a memoria y viceberza sin la intervención CPU

● La CPU lee las instruciones durante el ciclo de captación de instrucciones.●

6. Gestión de Memoria

● La CPU lee o escribe datos en memoria durante el ciclo de captación de datos.

● La multiprogramación hace que se utilicen mecanismos o tecnicas de gestión de memoria.

● La memoria principal es un recurso al que la CPU puede acceder directamente.

● Los programas deben estar en memoria antes de poder ser ejecutados.

El SO gestiona la memoria y para ello debe ser capaz de:

- Llevar el control de los bloques de memoria actualmente usados por los procesos

- Decidir qué procesos o datos se deben cargar o extraerlos de memoria

- Asignar y liberar espacios de memoria según las nececidades

➔ El S.O administra la información por medio de archivos.

➔ Cada medio de almacenamiento tiene una organización física diferente por ende diferentes formas lectura y escritura, pero este trabajo no es del S.O sino del controlador del periferico.

● Todos los medios de almacenamiento difieren en cuestiones de velocidad de aceso, capacidad, velocidad de transferencia y metodo de acceso.

7. Gestión de Almacenamiento

El S.O en la gestion de archivos es responsable de:Crear y eliminar archivos o directorios del disco o

disposivos de almacenamiento secundario. ➔ El S.O es resonsable tambien de las sig actividades:

Administración del espacio libreAsignación del espacio de almacenamientoPlanificación del discoFormateo de discosControl del sector de arranqueManejo de bloques defectuososAdministración del espacio de intercambio

La memoria caché es un sistema de almacenamiento más rápido que la RAM por ello se copia temporalmente una pequeña parte de memoria RAM a la cahe.

El uso de memoria caché garantiza una mayor velocidad de procesamiento

La tranferencia de datos de Cache a los reg de la CPU es una funcion hardawre no interviene el S.O.

8. Sistemas de E/SExisten los SubSistemas(Control de un

hardware específico) de E/S que ocultan al usuario y al propio S.O. Las características del hardware.

Estos subsistemas de E/S se componen de varios componentes:

Un componente de gestión de memoria que incluye almacenamiento en búfer, gestión de caché y gestión de colas.

Una interfaz general para controles de dispositivo

Controladores para dispositivos de hardware específico

9. Protección y seguridadSe emplean estos mecanismos para

asegurar los procesos que van a utilizar los recursos (Archivos, segmentos de memoria , CPU, ), hayan obtenido la debida autorización del S.O.

Un recurso desprotegido no puede defenderse contra el uso (mal uso)de un usuario no autorizado o intruso

Es responsabilidad de los mecanismos de seguridad defender al sistema frente a ataques internos y externos (Virus, Gusanos, etc)

Protección y seguridad

La protección y seguridad requiere que el sistema pueda distinguir a todos los usuarios, identificándolos con un ID de usuario y en algunos S.O. ID de grupos, estos están relacionado con los procesos e hilos de ese usuario.

Ejm: Permiso de solo lectura a un archivo para un usuario o un grupo de usuarios

10. Estructuras de Sistemas Operativos

Esta unidad tiene como objetivo analizar los servicios que presta un sistema operativo a los usuarios, a los procesos y a otros sistemas.

Veremos también como estructurar un sistema operativo para finalmente analizar cómo se instalan, personalizan y arrancan los S.O.

10.1 Servicios del Sistema Operativo

Existen algunos servicios que los sistemas operativos dan a los usuarios, procesos y otros sistemas

Los servicios del S.O facilitan la tarea de desarrollo al programador

Entre los principales servicios que proporciona el S.O tenemos:

...Continua Servicios del Sistema Operativo

a. Interfaz de usuario

Generalmente se definen tres formas (interfaz) en que el usuario puede interactuar con el sistema operativo

….Continua Servicios del Sistema Operativo

1. Interfáz Gráfica:

Conocidas como interfaces gráficas de usuario (GUI)

La GUI presenta al usuario un sistema de ventas y menus que permiten ser manipuladas por el mouse.

Por ej: el esritorio grafico de cualquier sistema operativo.

Los íconos representan programas, archivos, directorios y funciones del sistema

La primera GUI vino con la computadora

Xerox Alto en 1973

...Continua Servicios del Sistema Operativo

La primera GUI de Windows vino con la versión 1.0

Entre las GUI más conocidas están:

CDE (Common Desktop Environment)X-WindowsAIX de IBMKDE (K Desktop Environment) (Linux y Unix)GNOME (proyecto GNU) (Linux y Unix)

...Continua Servicios del Sistema Operativo

… Continua Interfaz de usuario del Sistema Operativo

AIX DE IBM Kde ubuntu

Gnome Linux y Unix

2.Linea de Comandos:

En la cual el usuario ingresa comandos uno a uno, a través del teclado.

Los interpretes de comandos pueden trabajar de dos formas:

La primera es que el propio interprete contenga el código que el comando tiene que ejecutar (MS-DOS)

La segunda es que el interprete busque el archivo que contiene el código necesario lo carga en memoria y lo ejecuta pasandole como parametro el nombre y la extensión del archivo: Ej: (Unix, Linux)

rm file.txt

...continua Servicios del Sistema Operativo

3. Por lotes:

En el cual todos los comandos necesarios son colocados en un archivo, desde donde el Sistema Operativo los extrae y ejecuta. Como ejemplo de una interfaz por lotes: piense en las tareas de respaldo que deben hacer todos los días los bancos.

...continua Servicios del Sistema Operativo

b. Ejecución de programasEl S.O carga los programas a la RAM y ejecuta dischos programas

c. Operaciones de E/SUn proceso en ejecución puede nececitar de una operación de E/S.

El S.O administra los perifericos que el programador y el usuario no puede hacerlo

...continua Servicios del Sistema Operativo

d. Sistema de archivosEl S.O puede leer y escribir archivos, crear, eliminar, copiar, mover, buscar, asignar privilegios de acceso a los archivos y directorios

e. ComunicacionesEl S.O transfiere información entre procesos locales del computador o procesos remotos a travez de una red de datos

...continua Servicios del Sistema Operativo

f. Detección de erroresEl S.O detecta los errores de ejecución y realiza la acción apropiada para manter la funcionalidad del sistema.

Existen otros servicios que le sirven al propio sistema, estas son:

...continua Servicios del Sistema Operativo

g. Asignación de Recursos:El S.O se encarga de asignar los recursos necesarios a varios usuarios o procesos simultanenamente.Recursos como:Ciclos de CPUMemoria RAMEspacio en discoDispositivos de E/S

Para aisgnar de mejor manera la CPU el S.O utiliza las rutinas de planificación.

...continua Servicios del Sistema Operativo

h. ResponsabilidadEl S.O utiliza runinas que le permiten guardar información del uso de los recursos por parte de los usuarios.

El S.O almacena información estadistica que sirve posteriores reconfiguraciones del sistema y procesos de auditoria

...continua Servicios del Sistema Operativo

i. Protección y seguridad:El S.O se asegura de que todos los accesos a los recursos del sistema por parte de varios procesos concurrentes sea controlado

El S.O garantiza la seguridad del sistema frente a posibles intrusos por medio de una red de datos

El S.O tambien protege el acceso a los recursos de E/S

...continua Servicios del Sistema Operativo

10.2 Llamadas al sistema

Las llamadas al sistema proporcionan la interfaz necesaria para obtener los servicios del Sistema Operativo (Interfaz de usuario, ejcución de prog, Operaciones de E/S, Administ de archivos, Comunicación, Deteción de errores, gestión de recursos, proteción y seguridad).

Las llamadas son rutinas escritas en C y C++, pero hay otras escritas en lenguaje ensamblador para funciones del S.O realacionadas directamente con el hardware

...continua Llamadas al sistema

Un programa pequeño utiliza muchas llamadas al sistema pero los programas grandes ejecutan miles de llamadas al sistema por segundo.

Para evitar estas tantas llamadas los sistemas operativos proporcionan al programador un conjunto de funciones APIs (Interfaz de programación de aplicaciones), que pueden usarse especificando los parametros y los valores de retorno necesarios por c/función.

...continua Llamadas al sistema

API win 32 para sistemas Windows. API POSIX (En versiones de Unix, Linux

y Mac OS X)

API de Java, para diseñar programas que se ejecutan sobre la máquina virtual de Java.

...continua Llamadas al sistema

Las funciones API sirven invocar las llamas al sistema que operan a nivel del kernel del S.O

Las funciones API hacen que el programador pueda construir aplicaciones que se puedan ejecutar en cualquier S.O que soporte la misma API

Los lenguajes de programación poseen la interfaz necesaria para hacer llamadas a las funciones API

...continua Llamadas al sistema

Tipos de llamada al sistema

Se dividen en 5 categorías principales.

1. Control de procesos2. Administración de archivos.3. Administrador de dispositivos4. Mantenimiento de información.5. Comunicaciones.

Tipos de llamada al sistema

Control de Procesos

Es un conjunto de rutinas dedicadas al control los procesos que se estan ejecutado para el éxito o fallo de los mismos (se ejecutan a nivel de kernel no visibles al usuario).

Dentro de estas rutinas están:

Terminar, Abordar Cargar, ejecutar

Tipos de llamada al sistema

Control de Procesos

Crear procesos, Terminar procesos Obtener atributos del proceso,

definir atributos del proceso Esperar para obtener tiempo Esperar suceso, señalar suceso Asignar y liberar memoria

Tipos de llamada al sistema

Administración de Archivos

Entre las llamadas comunes de la gestión de archivos tenemos:

Create, Delete, Open, Read, Write, reposition, Close, mover, copiar, pegar, buscar, etc

Todas estas operaciones son dedicadas tambien a directorios.

Cada directorio o archivo contiene atributos como son: Tipo de archivo, códigos de protección, información de usuario, atributos, etc

Tipos de llamada al sistemaAdministración de Dispositivos

Son rutinas que permiten controlar el uso de los recursos para los procesos en ejecución.

Entre las funciones princ para la gestión dispositivos o recursos estan request (solicitar), release (liberar).

Entre las rutinas principales estan:

Tipos de llamada al sistemaAdministración de Dispositivos

Solicitar dispositivo Liberar dispositivo Leer, escribir Obtener atributos del dispositivo, Definir

atributos del dispositivo Conectar y desconectar dispositivos

lógicamente

Tipos de llamada al sistema

Mantenimiento de información

El S.O. Mantiene información rederente a la hora (time), y fecha (date), información sobre el sistema, además mantiene información de todos sus procesos y se usan llamadas al sistemas para acceder a esta información.

(Get process attributes y set process attributes)

Tipos de llamada al sistema

Mantenimiento de información

Obtener la Hora o Fecha Definir hora o fecha Obtener datos del sistema Obtener los atributos del proceso,

archivos y dispositivos Establecer atributos de procesos archivos

o dispositivos

Tipos de llamada al sistema

comunicacionesExisten dos formas de comunicación:

1.- Paso de mensajes(uso frecuente para intercambiar pocos datos).- Los procesos se comunican e intercambian mensajes entre sí.

Antes de la comunicación entre procesos debe establecerse una conexión (Locales y remotos)

Todo proceso posee un id para que el S.O. lo identifique

Los Procesos que reciben conexiones de propósito especial se denominan demonios y son los que dan permiso para que se acceda la comunicación

10.3 Programas del sistema

Son los que brindan un cómodo entorno para desarrollar y ejecutar programas.

Categorías:

Administración de Archivos: Manipulan o administran archivos y directorios.

Información de estado: programas que solicitan al sistema info de estado (fecha, hora, cant de RAM, espacio libre en disco, num usuarios, etc)

Programas del sistema

Modificación de archivos: Editores de texto para crear y modificar archivos almacenados en disco u otros dispositivos de almacenamiento.

Soporte de lenguaje de programación.-compiladores, ensambladores(código programador + código de lenguaje ), interpretes para lenguajes de programación(C++, Java, Visual Estudio, etc)

Programas del sistema

Cargas y ejecución de programas.- Se cargan los programas a memoria para ser ejecutados.

Comunicación.-Proporcionan los Mecanismos para crear conexihkoones entre procesos, usuarios y computadoras.

Tanto los programas del sistema y de aplicación ayudan Al usuario a facilitarse su trabajo

11. Diseño e implementación

del S.O

Objetivos del Diseño

● Se debe definir primero los objetivos y especificaciones del sistema.

●Se debe tomar en cuenta los objetivos del usuario y el sistema.

●Los objetivos de usuario estaán orientados a un S.O facil, confiable, seguro y rapido.

●El diseño de los S.O difieren de acuerdo al hardware y a los servicios que va a brindar.

Objetivos del Diseño

● Se debe definir tambien los mecanismos y políticas del sistema.

●De igual manera se debe definir las politicas de implementación

Mecanismos y politicas

● Se debe separar y analizar con detalle cuales serán los mecanismos y las politicas del sistema.

●Los mecanismos se refieren al ¿como hacer?

●Las politicas se refieren ¿que hacer?●Las politicas pueden cambiar durante el

tiempo.●Los mecanismos deben ser flexibles para

adaptarse a nuevas políticas

Mecanismos y politicas

● Las politicas son importantes para la asignación de recursos (RAM, CPU, E/S)

●Los mecanismos nos indican como implementar el sistema para cumplir las politicas (algoritmos de planificación)

●La separación correcta de mecanismos y políticas permiten construir un sistema flexible.

●Los mecanismos deben adaptarse a cualquier cambio de politicas

Implementación

● Una vez diseñado el sistema se debe implementar con el lenguaje de programación adecuado.

●El lenguaje más usual en la implementación es el lenguaje C y Ensamblador.

●Por ejemplo el MS-DOS de Microsoft fue escrito en asembler y se acopla de eficientemente a hardware con arquitecturas Intel.

Implementación

● Los sistemas operativos linux y Windows están escritos en lenguaje C y se acoplan eficientemente a hardware defirentes arquitecturas (portabilidad).

●Los S.O actuales usan rutinas escritas en lenguaje de alto nivel con el fin de poder atender a las peticiones de procesamiento complejo que tienen las grandes aplicaciones.

12. Estructura del Sistema Operativo

Estrucura Simple

● Las interfaces y niveles de funcionalidad no estan bien separados.

● Los programas de aplicación pueden aceder directamente a controladores (el sistema es vulnerable).

● Posibles causas: caidas del sistema o perdida de datos

●Sistemas pequeños y limitados que luegon crecieron más allá de su alcance original

Estrucura Simple

● Por ej: MS-DOS

● Son conocidos como sistemas monoliticos porque su estructura es de un solo nivel

●Son sistemas complejos de implementar y mantener.

Grafica de la estructura de un sistema monolítico

Grafica de la estructura de S.O Unix

Estrucura en niveles

● Los sistemas operativos por niveles no son limitados en funcionalidad.

●Su diseño es modular.

● Están divididos por niveles con diseño Top – Down

●Son sistemas más flexibles de implementar y mantener.

Estrucura en niveles

● En estos sistemas las capas superiores solicitan las operaciones y servicios de las capas inferiores.

●Cada nivel o capa oculta a los niveles superiores la existencia de las estructuras de datos, operaciones y hardware.

● En los diseños mas recientes se utilizan menor num de niveles con mas funcionalidades por cada nivel.

Grafica de la estructura de un sistema operativo por niveles

Estrucura de sistemas microkernel

●Son sistemas operativos cuyo kernel es pequeño ya que posee un mínimo de funciones porque la mayoria esta implemetada en el espacio de usuario.

● ●Se caract porque los componentes no esenciales

del kernel se implentaron el los programas del sistema y espacio de usuario.

● La función principal del microkernel es proporcionar un mecanismo de comunicación entre los programas y los distintos servicios que se ejecutan en el mismo espacio de usuario.

iEstrucura de sistemas microkernel

●La comunicación se realiza mediante el paso de mensajes.

●Los prog cliente y los servicios nunca interactuan directamente ya que lo hacen interambiando mensajes con el microkernel

●Ventajas:

Facilidad de expansión del S.O ya que se modifica el espacio de usuario y no el kernel.

iEstrucura de sistemas microkernel

● Proporciona mas seguridad y fiabilidad, ya que la mayor parte de servicios se ejecutan como procesos de usuario de tal manera que los procesos del kernel quedarán mas protegidos.

● Varios S.O actuales utilizan el método de microkernel.

Desventajas:

Baja el rendimiento a medida de que aumenta los servicios en el espacio de usuario.

iEstrucura de sistemas por módulos

● Posiblemente es la mejor metodología para crear S.O ya que permite crear un kernel modular.

●Este diseño es habitual en las implementaciones modernas de UNIX como Solaris, Linux y Mac OS.

● Es similiar que la estructura por niveles ya que el kernel tiene interfaces bien definidas y protegidas pero es más flexible ya que cualquier módulo puede llamar a otro módulo.

●Es similar al microkernel ya que el módulo principal posee funciones esenciales y sabe como cargar y comunicarse con otros módulos y es más eficiente ya que los módulos no nececitan intercambiar mensajes con el módulo principal para comunicarse

iEstrucura de sistemas por módulos

Grafica de la estructura de un sistema operativo MAC OSX

13. Máquinas Virtuales

iMáquinas Virtuales

● ● La máquina virtual se basa en una arquitectura por

niveles.

● Software que permiten compartir el mismo hardware, pero operan en entornos diferentes (diferentes sistemas Operativos); Es un duplicado virtual de la maquina compuesta por (CPU, Memoria, Unidades de disco tarjetas de interfaz (etc, etc)).

●La maquina virtual nececita un buen espacio en disco para poder implementar la virtualización de todas sus funciones.

iMáquinas Virtuales

Implementación● Consiste en realizar un duplicado exacto de la

maquina subayacente es decir deberá ejecutarse en modo usuario y modo kernel.

●Las acciones tambien deben pasarse del modo usuario virtual al modo kernel virtual tal como sucede en la maquina real.

iMáquinas Virtuales

● ●

i Maquinas Virtuales

Ejemplos de MAQUINAS VIRTUALES

VMWARE (Proporciona la abstracción del hardware físico creando máquinas virtuales)

Maquina Virtual de Java.-(Se implementa por encima del S.O. En muchos casos también se implementan en un Chip)

iMáquinas Virtuales

Ventajas● Consolidación de servidores: convertir muchos servidores físicos en

virtuales. De este modo se aprovecha el hardware disponible de la mejor manera posible.

·Recuperación ante desastres: las máquinas virtuales se pueden salvar muy fácilmente, y además su estado se puede almacenar, por lo que en caso de desastre se puede recuperar la información con rapidez.

·Pruebas de aplicaciones: en muchas ocasiones se necesita un entorno limpio para probar una aplicación. Usar una máquina virtual permite instalar un sistema operativo desde cero, probar la aplicación y luego eliminar la máquina.

·Ejecución de entornos completos sin instalación ni configuración: la posibilidad de descargar máquinas virtuales desde Internet permite ahorrar tiempo en instalaciones y configuraciones. Existen muchas máquinas virtuales con servidores LAMP (Linux, Apache, mySQL y PHP) completos listos para ser usados, máquinas con gestores de contenidos, wikis, etc., gratuitos y funcionales desde el primer momento.

·Aplicaciones portátiles: con el uso de las máquinas virtuales se pueden tener PCs completos listos para usar en dispositivos USB, lo que puede ser de mucha utilidad para tener un entorno privado y usarlo en cualquier PC.

iMáquinas Virtuales

top related