1 introducción a sistemas operativos

73
7/17/2019 1 Introducción a Sistemas Operativos http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 1/73 Sistemas Operativos INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS

Upload: francisco3456

Post on 07-Jan-2016

15 views

Category:

Documents


1 download

DESCRIPTION

completo

TRANSCRIPT

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 1/73

SistemasOperativosINTRODUCCIÓN A LOS SISTEMAS OPER ATIVOS

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 2/73

Definición de Hardware

• Parte física del sistema, los “fierros”.

• Unidad Central de Proceso (CPU)• Unidad Aritmético – Lógica (UAL)

• Unidad Aritmética.• Unidad Lógica.

• Memoria.• Read Only Memory (ROM• Random Access Memory (RAM)

• Unidad de Control

• Dispositivos de Entrada

• Dispositivos de Salida.

• Dispositivos de E/S.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS2

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 3/73

Definición de software•Parte “intangible” del sistema.

•Conjunto de instrucciones que controla la

actividad del computador.•Diversos tipos:

• Aplicaciones, Programas, Sistemas.

• Utilerías.

• Lenguajes de Programación.• Sistemas Operativos.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS3

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 4/73

Definición de Sistema

Operativo• Explota los recursos de hardware de uno omás procesadores y sus periféricos.

• Ofrecer un conjunto de servicios a losusuarios del sistema y al programador.

•  Además gestiona la memoria secundaria ydispositivos de E/S.

• Es un programa que controla la ejecuciónde los programas de aplicación.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS4

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 5/73

Definición de Sistema

Operativo• Es una interfaz entre los programas deaplicación y el hardware.

• Oculta, al usuario, los detalles delhardware.

• El Sistema Operativo difiere de lasaplicaciones, una aplicación se puede

cambiar, un S.O. no.• El código necesario para un S.O. promedio

es de 5 millones de líneas de código.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS5

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 6/73

Ejemplos de Sistemas

Operativos• MS-DOS

• Windows 3.1, 95, 98, Me, 2000, XP, Vista, 7, 8

• Windows NT, Windows Server 

•  Apple Macintosh MacOS• Unix y propietarios relacionados

• System V, AIX, Solaris.

• Linux, BSD alternativa a Unix

• Red Hat, Mandrake, Suse, Ubuntu, Debian, FreeBSD,otros.

• Muchos otros.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS6

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 7/73

InterfaCE con el usuario

•Lenguaje de Control• Indica al S.O. Una acción o tarea especifica.

• Ejemplos:• Grabar un conjunto de datos o archivo.

• Compilar un programa.• Ejecutar un programa.

•  Abrir o cerrar archivos.

• Otros.

•Generalmente una aplicación llamada “Shell” es

la encargada.•GUI (Graphical User Interface) o InterfaseGráfica de usuario utiliza gráficos e iconos.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS7

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 8/73

Kernel de un Sistema Operativo

•Parte del Sistema Operativo residente en la memoriaprincipal.

•Contiene las funciones más frecuentemente utilizadas.

•También se le llama “núcleo del S.O.”

•Micro-kernel y monolítico.

•El S.O. se ejecuta en modo kernel (supervisor) con

acceso completo.•En modo usuario el acceso es restringido a ciertasinstrucciones de máquina.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS8

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 9/73

Ubicación del Sistema Operativo

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS9

Usuario final

Programador

Diseñador de

Sistemas

OperativosHardware del computador

Sistema Operativo

Utilitarios

Programas de

Aplicación

Modo

Kernel

Modo

Usuario

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 10/73

Servicios del Sistema Operativo

•Ejecución de Programas.

• Acceso a dispositivos E/S.

• Acceso controlado a archivos.• Acceso al Sistema y a los recursos específicos, brindaprotección y resuelve conflictos de propiedad de losrecursos.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS10

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 11/73

Servicios del Sistema Operativo

•Detección y respuesta a errores:• Errores de hardware internos y externos.

• Errores de memoria.

• Fallas de dispositivos.

• Errores de software.• Overflow aritmético.

•  Acceso prohibido a ubicaciones de memoria.

El sistema operativo debe dar una respuesta queelimine la condición de error con el menor impactoposible sobre las aplicaciones en ejecución.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS11

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 12/73

Servicios del Sistema Operativo

•Contabilidad:• Recolectar estadísticas de utilización de los diversos

recursos.

• Monitorear parámetros de rendimiento.• Tiempo de respuesta.

• Usado para mejoras futuras.

• Para facturación a usuarios.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS12

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 13/73

SO como Máquina extendida

•La función del Sistema Operativo es la de presentar alusuario el equivalente de una máquina ampliada omáquina virtual que sea más fácil de programar que elhardware implícito.

•Esconde los detalles de operación que se debenrealizar.

•El usuario interactúa con la máquina virtual que es más

fácil de usar.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS13

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 14/73

SO como Administrador de recursos

•La tarea principal del sistema operativo es llevar el controlde quién utiliza cuál recurso, conceder requisiciones derecursos, explicar el uso e interceder en requisicionesconflictivas de diferentes programas y usuarios.

•Dirige al procesador en el uso de los recursos del sistema.

•Dirige al procesador cuando se ejecutan otros programas,tiene control del tiempo.

•El procesador detiene la ejecución del SO para ejecutarotros programas.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS14

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 15/73

SO como Administrador de recursos

•Cada programa obtiene tiempo de un recurso

•Cada programa obtiene espacio del recurso.

La interfaz entre el sistema operativo y los programasde usuario se define por medio del conjunto de"instrucciones extendidas" que el sistema operativoproporciona, estas se conocen como llamadas alsistema.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS15

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 16/73

Definición de Sistema Operativo

•Puede considerarse al Sistema Operativo comoel más fundamental de todos los programas.

•Controla todos los recursos del sistema decómputo y ofrece la base sobre la cual puedenescribirse los programas de aplicación.

•El sistema operativo es una capa de softwareque está sobre la parte superior del hardwaredescubierto.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS16

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 17/73

Definición de Sistema Operativo

•De esta manera se manejan todas las partes delsistema y se presentar al usuario una interfaz o máquinavirtual que es más fácil de entender y programar.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS17

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 18/73

Reseña Histórica

•Primera generación (1945  – 1955)

•Tubos de vacio (bulbos), tarjetas perforadoras.• Computadora de Atanasoff y Berry con 300 bulbos.

• La Z3 de Zuse usaba relevadores en Alemania.• En Inglaterra fue construida la Colossus.

• Mark I se creo en la Universidad de Harvard.

• Eckert y Mauchly construyen la ENIAC.

• Se utilizaban tableros de conexiones de cables.

• La programación se hacía creando circuitos con bulbos, nohabía sistemas operativos.

• En 1950 los tableros fueron sustituidos por tarjetasperforadas.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS18

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 19/73

Reseña Histórica

•Segunda generación (1955  – 1965)

•Transistores y sistemas de procesamiento en lotes.• Las computadoras eran “mainframes” encerradas en

cuartos especiales con aire acondicionado.• Los “ jobs” o trabajos eran escritos en tarjetas perforadas.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS19

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 20/73

Reseña Histórica

•Segunda generación (1955  – 1965)• Sistemas de procesamiento por lotes (batch).

• Operaciones de procesamiento fuera de línea (sin conexión a lacomputadora).

• Sistemas Operativos en ensamblador y Fortran como FMS(Fortran Monitor System) y IBSYS de la IBM 7094.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS20

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 21/73

Reseña Histórica

•Tercera generación (1965  – 1980)

•Circuitos integrados y multiprogramación.• La IBM 360 fue la primer computadora en usar circuitos integrados

a pequeña escala.

• El Sistema Operativo OS/360 funcionaba en todos los modelos deIBM como 370, 4300, 3080 y 3090.

• La multiprogramación evitaba que un proceso tuviera que esperar por una larga operación de E/S, la memoria se partía y se usabapara diferentes “ jobs”.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS21

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 22/73

Reseña Histórica

•Tercera generación (1965  – 1980)• Cuando un trabajo terminaba ya no se tenía que cargar uno nuevo

del lector de tarjetas perforadas, ahora se hacía automáticamentedel disco magnético en la técnica llamada Spooling (SimultaneousPeripheral Operation On Line).

• El tiempo compartido (time sharing) es una variante de lamultiprogramación que permitía a varios usuarios trabajar al mismotiempo, la computadora los atendía cuando la CPU estaba inactiva.

• El primer sistema de tiempo compartido fue CTSS (Compatible

Time Sharing System) del M.I.T.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS22

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 23/73

Reseña Histórica

•Tercera generación (1965  – 1980)• MULTICS (MULTiplexed Information and Computing Service) se

desarrollo para dar servicio a cientos de usuarios en el área deBoston.

• Ken Thompson de Bell Labs que trabajó en MULTICS desarrollouna versión para un usuario en una minicomputadora PDP-7 menor que la PDP-11.

• UNIX ha tenido dos versiones principales: System V de AT&T, BSDde la Universidad de Berkeley, POSIX un estándar del IEEE y un

clon pequeño con fines educativos llamado MINIX, que fue la basepara crear Linux por Linus Torvalds.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS23

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 24/73

Reseña Histórica

•Cuarta generación (1980 – actual)

•Computadoras personales.• Desarrollo de LSI (Large Scale Integration) en circuitos

integrados que permitió crear microcomputadoras.• El Intel 8088 fue el microprocesador que se uso para laprimera microcomputadora, se desarrollo un S.O. basado endisco llamado CP/M (Control Program for Microcomputers) amediados de los 70´s.

• IBM diseño la IBM PC (Personal Computer) y en base a un

DOS (Disk Operating System) Bill Gates creo MS-DOS(Microsoft Disk Operating System) que incluía también ellenguaje de programación BASIC.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS24

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 25/73

Reseña Histórica

•Cuarta generación (1980  – actual)• La IBM PC/AT con CPU Intel 80286 usaba una versión mejorada de

MS-DOS que incluía funciones de CP/M y XENIX.

• La Interfaz gráfica de Usuario (GUI) desarrollada en los años 60’spor Xerox fue considerada por Steve Jobs para la computadora Apple Lisa.

• Windows fue la versión de GUI que corría sobre MS-DOS enWindows 95 y 98 en Intel de 16 bits, luego se crearía la versión NT(New Technology), Me (Millenium edition) con procesadores

Pentium, Windows 2000 fue la base para la versión XP.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS25

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 26/73

Reseña Histórica

•Cuarta generación (1980  – actual)• UNIX también funcionaba sobre procesadores Pentium con la

versión FreeBSD (de la Universidad de Berkeley).

• La versión X Window System conocida como X11 es la primera

versión de UNIX con GUI.•  A mediados de los 80´s se desarrollaron sistemas operativos en red

utilizados para las primeras redes de computadoras conectadas ylos sistemas operativos distribuidos que trabajan con más de unprocesador por lo que requieren de algoritmos de planificación del

procesador.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS26

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 27/73

Hardware de la computadora

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS27

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 28/73

Hardware de la computadoraProcesadores.• Contador de programa (Program Counter): Contiene la

dirección de memoria de la siguiente instrucción a obtener.

• Apuntador de pila (Stack Pointer): Apunta a la parte superiorde la pila actual de memoria que contiene un conjunto devalores por cada procedimiento que ha entrado pero no hasalido.

• PSW (Program Status Word): Contiene los bits de código de

condición, asignados al comparar, sirve para procesar lasllamadas de sistema y operaciones de E/S.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS28

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 29/73

Hardware de la computadora• Canalización (Pipeline): Procesamiento de varias instrucciones a

la vez, cada una debe obtenerse, codificarse y ejecutarse.

• Canalización superescalar: Dos o más instrucciones dearitmética de enteros, de punto flotante y operaciones lógicas,

se obtienen, decodifican y se ponen en un búfer antes deejecutarse.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS29

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 30/73

Hardware de la computadora• Llamada al sistema (System Call): Orden atrapada en el kernel

que invoca al Sistema Operativo.

• Chip multihilamiento (Multithreading) o hiperhilamiento

(Hyperthreading): Procesador Pentium 4 o similar que trabajacon dos hilos de ejecución (threads) alternando uno y otro,puede ser un programa en ejecución junto con un proceso ligero.

• Cada hilo aparece para el Sistema Operativo como un procesadorseparado.

• 2 procesadores separados cada uno con 2 hilos aparecen como 4hilos para el Sistema Operativo.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS30

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 31/73

Hardware de la computadora• Chip de núcleos (Core o Multicore): Procesador con 2, 4 o más

procesadores completo incluídos.

• Se requiere de un Sistema Operativo multiprocesador.

• Chip de 4 núcleos (quad-core).

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS31

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 32/73

Memoria

Almacenamiento de datos.

• Memoria organizada en líneas de caché de 64 bytes.

• El acceso a la memoria debe ser más rápido que la ejecución de una

instrucción por el CPU.• Memoria caché L1 y caché L2: Memoria dentro de la CPU de alta

velocidad sirve para guardar instrucciones decodificadas que se van aejecutar.

• La caché L1 no tiene tiempo de espera, la caché L2 tarda 1 o 2 ciclos

de reloj.• Los procesadores Intel comparten caché L2 con los núcleos, en los

AMD cada núcleo tiene caché L2.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS32

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 33/73

Memoria

• Memoria de acceso aleatorio (RAM): Memoria para peticiones alCPU que no pasan por la caché.

• Memoria de solo lectura (ROM): Contiene el cargador de arranque(Bootstrap loader).

• Memoria borrado eléctrico (EEPROM) y Memoria Flash: Memoriano volátil que puede borrarse y sobre escribirse.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS33

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 34/73

DiscosDisco duro (Hard Disk).◦ Discos que giran a 5400, 7200 o 10800 rpm.

◦ Los datos se almacenan en pistas y cilindros.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS34

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 35/73

Discos

• Memoria virtual (Virtual Memory): Seutiliza el disco para guardar programas muygrandes que no caben en la memoriaprincipal que a su vez se usa como una

memoria caché.• Unidad de Administración de Memoria

MMU (Memory Management Unit): Estáen el CPU y controla el acceso a datos deldisco y la memoria para convertir

direcciones físicas en la RAM.• Cintas: Para encontrar datos en una cinta

primero se debe “montar” en un lector decinta, por una persona o por un robot.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS35

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 36/73

Dispositivos de E/S•IDE (Integrated Drive Electronics): Interfasessimples para control de lectores de discos.

•Controlador (Driver): Software que

comunica al dispositivo con el SistemaOperativo, existe uno diferente por cada S.O.

•Espacio de puertos E/S: Colección de todoslos registros que se usan para comunicar alS.O. con los dispositivos.

•Interrupciones: Comunicaciones entre eldispositivo y el S.O.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS36

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 37/73

Dispositivos de E/S•Vector de interrupciones: Parte de la memoria donde se guarda elestado del dispositivo.

•Acceso directo a memoria (DMA Direct Memory Access): Controlael flujo de bits entre la memoria y el dispositivo sin intervención delCPU.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS37

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 38/73

Buses•Sistema de ocho buses (PCI, SCSI, USB, IDE e ISA) con diferentesvelocidades de transferencia y funciones.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS38

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 39/73

Buses

•ISA (Industry Standard Architecture).

•PCI (Peripheral Component Interconnect).

•USB (Universal Serial Bus).

•SCSI (Small Computer System Interface).

•Fire Wire o IEEE 1394 de Apple.

•Concepto conectar y usar (Plug and Play).

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS39

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 40/73

Arranque de la computadoraBIOS (Basic Input Output System).

Diagnóstico de dispositivos.

Memoria CMOS.

Arranque del Sistema Operativo:◦ Desde el Disco duro.

◦ Desde un CD-ROM.

◦ Desde una memoria Flash.

◦ Otro.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS40

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 41/73

Tipos de Sistemas OperativosDe Mainframe.◦ Computadoras con grandes cantidades de E/S.

◦ Procesamiento de muchos trabajos a la vez:

◦ Procesamiento por lotes.

◦ Procesamiento de transacciones.

◦ Tiempo compartido.

◦ Ejemplos: OS/390, OS/360.

De Servidores.

◦ Servidores o PC muy grandes, estaciones de trabajo (Work Station).◦ Servidores Web, servidores de impresión o archivos.

◦ Ejemplos: Solaris, FreeBSD, Linux, Windows Server.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS41

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 42/73

Tipos de Sistemas OperativosDe Multiprocesadores.◦ Varios procesadores en un CPU.

◦ Computadoras con chips multinúcleo.

◦ Ejemplos: Windows y Linux.

De Computadoras Personales.◦ Soportan multiprogramación.

◦ Dan servicio a un solo usuario.

◦ Ejemplos: Linux, FreeBSD, Windows, MacOS.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS42

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 43/73

Tipos de Sistemas OperativosDe Computadoras de bolsillo.◦ PDA (Personal Digital Assistant) o Handheld.

◦ CPUs de 32 bits que soportan telefonía y multimedia.

◦ Ejemplos: Symbian OS y Palm OS.

Integrados.◦ Incrustados (embedded) controlan dispositivos que no son

computadoras como hornos de microondas, TV, automóviles,reproductores de MP3, celulares.

◦ Ejemplos: QNX y VxWorks.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS43

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 44/73

Tipos de Sistemas OperativosDe Nodos Sensores.◦ Pequeñas computadoras que se conectan inalámbricamente a una base.

◦ Computadoras con radios integrados y de baterías utilizadas para seguridad.

◦ Ejemplo: TinyOS.

En Tiempo Real.◦ Sistemas de control de procesos industriales y recolección de datos.

◦ Sistemas que realizan una función en determinado tiempo.

◦ Ejemplo: e-Cos.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS44

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 45/73

Tipos de Sistemas OperativosDe Tarjetas Inteligentes.◦ Dispositivos muy pequeños que tienen un chip .

◦ Algunas trabajan con Java y tienen instalada una máquina virtual (JVM).

◦ Applets de Java son descargados en una tarjeta y son interpretados por

JVM.◦ Sistemas operativos muy primitivos con pocas funciones.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS45

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 46/73

Conceptos básicos deSistemas Operativos•Procesos.

•Espacios de direcciones.

•Archivos.•Entrada / Salida.

•Protección.

•Shell.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS46

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 47/73

Procesos¿Qué es un Proceso?

Un programa en ejecución.

Una instancia de un programa ejecutándose en uncomputador.

Entidad que puede ser asignada a, y ejecutada en, unprocesador.

Una unidad de actividad caracterizada por un único hilosecuencial de ejecución, un estado actual y un conjunto derecursos del sistema asociados.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS47

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 48/73

ProcesosConsiste de tres componentes:

◦ Un programa ejecutable

◦ Datos asociados, necesarios para el programa

◦ Contexto de ejecución del programa

Un proceso contiene toda la información que el S.O. requierepara administrarlo (contador de programa, registrador deinstrucción, pila o stack, otros).

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS48

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 49/73

ProcesosEn muchos sistemas operativos, toda la información referentea cada proceso se almacena en una tabla del sistema operativollamada tabla de procesos, la cual es un arreglo (o listaenlazada) de estructuras, una para cada proceso en existencia

corriente.

Por lo tanto un proceso consta de su espacio de direcciones,generalmente llamada imagen del núcleo y su registro de latabla de procesos.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS49

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 50/73

ProcesosUn proceso puede crear uno o más procesos diferentes(conocidos como procesos hijos) y estos a su vez generannuevos procesos hijos, se llega rápidamente a una estructurade árbol.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS50

A

B C

D E F

A B

ProcesoTubería

  Proceso

Los estados del proceso

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 51/73

Los estados del proceso

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS51

Transiciones entre estados:

1. El proceso se bloquea por E/S.

2. El proceso se suspende por time-out.

3. El planificador selecciona unproceso de la fila de los listos.

4. El proceso termina su E/S y esdesbloqueado.

Estados de un proceso:

Running: Está utilizando la CPU, ejecutando sus instrucciones.

Blocked: A la espera de finalización de la E/S.

Ready: A la espera de ser seleccionado para ocupar la CPU.

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 52/73

Espacio de direcciones

Los S.O. permiten colocar varios programas en memoria almismo tiempo.

Con computadoras de 32 o 64 bits pueden direccionar 232 o

264 localidades de memoria.

Adicionalmente puede usarse memoria virtual mediante undisco magnético.

Esto permite tener más almacenamiento en una memoria

limitada.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS52

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 53/73

Archivos

Un archivo es un bloque deinformación quegeneralmente reside endisco.

El directorio es una formade guardar archivos, éstetiene una estructura de

árbol.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS53

Directorio raíz

Alumnos Facultad

Juan María Luis Prof. Peréz

P rof . G ómez P rof. Lóp ez

Cursos Examenes

Archivos

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 54/73

ArchivosUn concepto importante en los archivos es el de archivoespecial, este permite manejar los dispositivos como si fueranarchivos.

Los archivos especiales se dividen en dos tipos: archivosespeciales de bloque y archivos especiales de caracteres.

Los archivos especiales de bloque manejan dispositivos en losque las transferencias se hacen en bloque al azar, como los

discos.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS54

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 55/73

ArchivosLos archivos especiales de caracteres modelan dispositivosseriales como impresoras de línea, interfases de red, etc.

El dispositivo estándar de entrada se reconoce con eldescriptor de archivo 0 y el dispositivo estándar de salida porel descriptor de archivo 1.

El descriptor de archivo 2 se refiere al dispositivo errorestándar.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS55

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 56/73

Entrada / SalidaExisten muchos dispositivos de Entrada y de Salida, teclados,monitores, impresoras, etc.

Es responsabilidad del S.O. administrar esos dispositivos.

El subsistema de E/S administra dispositivos y esindependiente a estos.

Otra parte de software son los “drivers”.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS56

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 57/73

ProtecciónEn el S.O. UNIX maneja 9 bits para archivos.

Los bits rwx (read write y execute) protegen a nivelpropietario, integrantes del grupo y público.

Además para directorios existe permiso de búsqueda.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS57

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 58/73

ProtecciónModos de operación de la CPU:

◦ Modo usuario: se restringe acceso a parte de los recursos

◦ Modo supervisor: se tiene acceso a todos los recursos

Protección de memoria: Previene que el programa de unusuario tenga acceso a los programas y datos de otrosusuarios y del sistema operativo.

PROF. LUIS H. CRUZ A.

SISTEMAS OPERATIVOS58

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 59/73

ProtecciónTimer - Previene que un trabajo monopolice los recursos delsistema.

Instrucciones privilegiadas - Ejecutadas sólo por el S.O.

Interrupciones - Son llamadas a funciones del kernel.

Si un programa intenta usar recursos restringidos, se produceuna interrupción.

PROF. LUIS H. CRUZ A.SISTEMAS OPERATIVOS

59

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 60/73

El ShellEl intérprete de comandos llamado shell (concha) no esparte del sistema operativo, pero hace un uso intenso delas llamadas al sistema.

Cuando un usuario entra al sistema, se inicia un shell.

Una vez activado el shell espera a que el usuario emitaun comando.

Cuando se emite un comando el shell crea un proceso

derivado y espera a que este termine.

PROF. LUIS H. CRUZ A.SISTEMAS OPERATIVOS

60

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 61/73

Llamadas al Sistema

Una llamada al sistema es un tipoespecial de llamada a unprocedimiento que entra en el

kernel.

Una llamada de un programa en C:

cuenta = read (fd, bufer, nbytes)

PROF. LUIS H. CRUZ A.SISTEMAS OPERATIVOS

61

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 62/73

PROF. LUIS H. CRUZ A.SISTEMAS OPERATIVOS

62

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 63/73

Llamadas de sistema POSIX

PROF. LUIS H. CRUZ A.SISTEMAS OPERATIVOS

63

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 64/73

Llamadas de sistema POSIX

PROF. LUIS H. CRUZ A.SISTEMAS OPERATIVOS

64

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 65/73

Llamadas en UNIX

Los procesos tienen tres segmentos: texto, datos y pila. Eneste ejemplo, los tres están en el espacio de dirección, perotambién se soportan espacios para datos e instrucciones

separados.

PROF. LUIS H. CRUZ A.SISTEMAS OPERATIVOS

65

Ll d d i i

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 66/73

Llamadas para administrardirectorios

Sea la siguiente llamada:

link (“/ usr/jim /memo” , “/ usr/ast  /nota”)

El archivo memo se introduce al directorio ast con el nombrenota.

PROF. LUIS H. CRUZ A.SISTEMAS OPERATIVOS

66

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 67/73

Sistema de archivos

Dada la siguiente llamada:

Mount (“ dev  /fd0” , “/ mnt ”, 0)

El sistema de archivos queda así antes y después del montaje:

PROF. LUIS H. CRUZ A.SISTEMAS OPERATIVOS

67

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 68/73

Sistema MonolíticoTodo el S.O. se ejecuta como un solo programa en modo kernel.

La estructura básica es la siguiente:

PROF. LUIS H. CRUZ A.SISTEMAS OPERATIVOS

68

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 69/73

Sistema de capasEl S.O. trabaja en capas, cada una soporta a las superiores.

PROF. LUIS H. CRUZ A.SISTEMAS OPERATIVOS

69

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 70/73

Microkernels de MINIX 3La idea básica de microkernel es lograr una alta confiabildadal dividir al S.O. en módulos pequeños y bien definidos.

Solo el microkernel se ejecuta en modo kernel y el resto delos procesos en modo usuario.

PROF. LUIS H. CRUZ A.SISTEMAS OPERATIVOS

70

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 71/73

Modelo Cliente - ServidorLos servidores proporcionan servicios que los clientes utilizan.

La comunicación es mediante mensajes.

El cliente envía peticiones y recibe respuestas del servidor.

PROF. LUIS H. CRUZ A.SISTEMAS OPERATIVOS

71

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 72/73

Maquina virtual VM/370El sistema CMS (Conversational Monitor System) era unsistema monousuario como máquina virtual que se ejecuta enmáquinas IBM 360.

La VM/370 además podía ejecutar OS/360 para variosusuarios.

En otras máquinas virtuales podían usarse distintos S.O.

PROF. LUIS H. CRUZ A.SISTEMAS OPERATIVOS

72

7/17/2019 1 Introducción a Sistemas Operativos

http://slidepdf.com/reader/full/1-introduccion-a-sistemas-operativos 73/73

Actualización de los S.O.

•Actualizaciones e incorporación de nuevos tipos dehardware.

•Nuevos servicios.

•“Fixes” – correcciones.•Service pack.

•Parches (patchs).

•Upgrades.