11.07.2015 Views

Principios básicos de los sistemas operativos - CTR - Universidad ...

Principios básicos de los sistemas operativos - CTR - Universidad ...

Principios básicos de los sistemas operativos - CTR - Universidad ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Bloque I: <strong>Principios</strong> <strong>de</strong> <strong>sistemas</strong><strong>operativos</strong>UNIVERSIDADDE CANTABRIATema 1. <strong>Principios</strong> <strong>básicos</strong> <strong>de</strong> <strong>los</strong> <strong>sistemas</strong> <strong>operativos</strong>Tema 2. ConcurrenciaTema 3. FicherosTema 4. Sincronización y programación dirigida por eventosTema 5. Planificación y <strong>de</strong>spachoTema 6. Sistemas <strong>de</strong> tiempo real y <strong>sistemas</strong> empotradosTema 7. Gestión <strong>de</strong> memoriaTema 8. Gestión <strong>de</strong> dispositivos <strong>de</strong> entrada-salidaGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 1FACULTAD DE CIENCIAS14/feb/111Notas:UNIVERSIDADDE CANTABRIATema 1. <strong>Principios</strong> <strong>básicos</strong> <strong>de</strong> <strong>los</strong> <strong>sistemas</strong> <strong>operativos</strong>• Concepto <strong>de</strong> sistema operativo.• Evolución <strong>de</strong> <strong>los</strong> <strong>sistemas</strong> <strong>operativos</strong>.• Estructura <strong>de</strong> <strong>los</strong> <strong>sistemas</strong> <strong>operativos</strong>.• Concepto <strong>de</strong> programa y proceso.• Concurrencia: gestión <strong>de</strong> procesos y threads.• Gestión <strong>de</strong> memoria.• Ficheros y el sistema <strong>de</strong> ficheros.• Entrada/salida.• Sistemas multiusuario y protección.GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 2FACULTAD DE CIENCIAS14/feb/11


1. Concepto <strong>de</strong> sistema operativoUNIVERSIDADDE CANTABRIAControla el uso por parte <strong>de</strong> <strong>los</strong> programas <strong>de</strong> aplicación <strong>de</strong> todos<strong>los</strong> recursos <strong>de</strong>l computador: memoria, CPU, unida<strong>de</strong>s <strong>de</strong> entraday salidaIn<strong>de</strong>pendiza al programa <strong>de</strong> aplicación <strong>de</strong>l hardwareProporciona comunicación con otros computadoresEjecuta servicios para <strong>los</strong> programas o aplicacionesEjecuta ór<strong>de</strong>nes <strong>de</strong> <strong>los</strong> usuariosGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 3FACULTAD DE CIENCIAS14/feb/11Niveles <strong>de</strong>l sistema operativoUNIVERSIDADDE CANTABRIAUsuariosAplicacionesShellDrivers I/OServicios (API)NúcleoSistemaoperativoHardwareGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 4FACULTAD DE CIENCIAS14/feb/11


Gestión <strong>de</strong> recursosUNIVERSIDADDE CANTABRIAAsignación <strong>de</strong> recursos• memoria, disco, dispositivos <strong>de</strong> entrada salida• CPU (planificación)Protección• Entre usuarios y aplicaciones• Entre cada aplicación y el sistema operativo• Entre cada aplicación y el hardwareContabilidad• A efectos <strong>de</strong> gestión <strong>de</strong> coste• A efectos <strong>de</strong> calidad <strong>de</strong> servicioGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 5FACULTAD DE CIENCIAS14/feb/11Servicios <strong>de</strong>l sistema operativoUNIVERSIDADDE CANTABRIAConcurrencia• procesos• threads• sincronizaciónFicherosEntrada/Salida (incluyendo comunicaciones)Gestión <strong>de</strong> la memoriaServicios <strong>de</strong> tiempo real• planificación, relojes, ...GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 6FACULTAD DE CIENCIAS14/feb/11


Arranque <strong>de</strong>l computadorUNIVERSIDADDE CANTABRIAFaseIniciador ROMCargador <strong>de</strong>l SOInicialización SOFuncionamiento normalTest <strong>de</strong>l hardwareOperaciónCarga <strong>de</strong>l cargador <strong>de</strong>l SOCarga en memoria <strong>de</strong> componentes<strong>de</strong>l SOTest <strong>de</strong>l sistema <strong>de</strong> archivosCreación <strong>de</strong> estructuras <strong>de</strong> datosinternasArranque <strong>de</strong> procesos <strong>de</strong>l sistema(<strong>de</strong>monios)GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 7FACULTAD DE CIENCIAS14/feb/112. Evolución <strong>de</strong> <strong>los</strong> <strong>sistemas</strong> <strong>operativos</strong>UNIVERSIDADDE CANTABRIALos primeros computadores no tenían sistema operativo• programados en lenguaje máquina• el programador hacía todo el softwareSistemas <strong>de</strong> procesamiento por lotes (1955-1965)TarjetasLector <strong>de</strong>tarjetasUnidad <strong>de</strong>cintaCinta <strong>de</strong>entradaComputadorCinta <strong>de</strong>salidaImpresora• se agrupaban varios trabajos en un lote, para agilizar el procesoGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 8FACULTAD DE CIENCIAS14/feb/11


Evolución <strong>de</strong> <strong>los</strong> <strong>sistemas</strong> <strong>operativos</strong>(cont.)UNIVERSIDADDE CANTABRIALa multiprogramación (1965-1980)• Varias aplicaciones cargadas a la vez en memoria• Cuando una aplicación está en espera, las <strong>de</strong>más pue<strong>de</strong>ncontinuar• Spooling: leer tarjetas al mismo tiempo que se procesan otras• El tiempo compartido entre múltiples usuarios es una evoluciónnatural <strong>de</strong> la multiprogramación- ejemplo: CTSS, MIT;- reduce drásticamente el tiempo <strong>de</strong> espera a un trabajo- se populariza sólo al haber hardware <strong>de</strong> protección- <strong>de</strong>semboca en el sistema operativo UNIXGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 9FACULTAD DE CIENCIAS14/feb/11Evolución <strong>de</strong> <strong>los</strong> <strong>sistemas</strong> <strong>operativos</strong>(cont.)UNIVERSIDADDE CANTABRIAHistoria <strong>de</strong>l UNIX• A partir <strong>de</strong>l CTSS se diseña el MULTICS (MIT, Bell Labs, GeneralElectric)- pensado para cientos <strong>de</strong> usuarios- escrito en PL/I- resultó <strong>de</strong>masiado ambiciosoGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 10FACULTAD DE CIENCIAS14/feb/11


Evolución <strong>de</strong> <strong>los</strong> <strong>sistemas</strong> <strong>operativos</strong>(cont.)UNIVERSIDADDE CANTABRIAHistoria <strong>de</strong>l UNIX (cont.)• Ken Thompson, <strong>de</strong> Bell Labs, <strong>de</strong>sarrolla una versiónmonousuario, en ensamblador: UNICS- se unen al proyecto Brian Kernighan y Denis Ritchie- se porta a un computador PDP-11, con hardware <strong>de</strong> protección <strong>de</strong>memoria- se reescribe en un lenguaje propio: B, que es una simplificación <strong>de</strong>lBCPL- Ritchie rediseña el lenguaje y lo llama C- se reescribe Unix en C: se consigue la portabilidad- se distribuye gratuitamente a las universida<strong>de</strong>s- se estandariza con el nombre POSIXGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 11FACULTAD DE CIENCIAS14/feb/11Evolución <strong>de</strong> <strong>los</strong> <strong>sistemas</strong> <strong>operativos</strong>(cont.)UNIVERSIDADDE CANTABRIAComputadores personales (1980-1990)• dos tipos:- estaciones <strong>de</strong> trabajo: UNIX y re<strong>de</strong>s- PCs para oficinas y hogares: MS-DOS, luego Windows• software fácil <strong>de</strong> usar: entornos gráficos <strong>de</strong> ventanasLa Internet (1991-hoy)• <strong>los</strong> <strong>sistemas</strong> <strong>operativos</strong> generales proporcionan conexión a lared• se populariza el software libre (Gnu)• dos gran<strong>de</strong>s familias: Windows y Unix/Linux• surgen otros niveles diferentes al SO: Java, .netGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 12FACULTAD DE CIENCIAS14/feb/11


3. Estructura <strong>de</strong> <strong>los</strong> <strong>sistemas</strong><strong>operativos</strong>UNIVERSIDADDE CANTABRIAUsuariosAplicaciones Shell 1Shell 2ServiciosAPI Win32API POSIXNúcleoGestión<strong>de</strong>ProcesosGestión<strong>de</strong>MemoriaEntrada/SalidaDrivers I/OArchivosyDirectoriosSeguridadyprotecciónRe<strong>de</strong>sHardwareGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 13FACULTAD DE CIENCIAS14/feb/11Tipos <strong>de</strong> <strong>sistemas</strong> <strong>operativos</strong> por suestructuraUNIVERSIDADDE CANTABRIAa) Monolíticos• Todos <strong>los</strong> componentes en un solo programa• Un solo espacio <strong>de</strong> direcciones• Un solo flujo <strong>de</strong> control (no hay concurrencia interna)• El sistema operativo se ejecuta en modo privilegiado; lasaplicaciones en modo usuario (restringido)• Ejemp<strong>los</strong>: MS-DOS, UNIX• Son complicados <strong>de</strong> modificarGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 14FACULTAD DE CIENCIAS14/feb/11


Tipos <strong>de</strong> <strong>sistemas</strong> <strong>operativos</strong> por suestructura (cont.)UNIVERSIDADDE CANTABRIAb) A capas• Jerarquía <strong>de</strong> capas, cada una con una interfaz clara y que sólousa <strong>los</strong> servicios <strong>de</strong> la capa inferior• Ejemp<strong>los</strong> THE (Dijkstra 1968), OS/2 (Deitel, 1994)AplicacionesGestión <strong>de</strong> entrada/salidaTHEControlador <strong>de</strong>l terminalGestión <strong>de</strong> memoriaPlanificación <strong>de</strong> la CPU y multiprogramaciónHardwareGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 15FACULTAD DE CIENCIAS14/feb/11Tipos <strong>de</strong> <strong>sistemas</strong> <strong>operativos</strong> por suestructura (cont.)UNIVERSIDADDE CANTABRIAc) Máquinas virtuales• Se proporciona un mo<strong>de</strong>lo <strong>de</strong> una máquina sobre la que sepue<strong>de</strong>n ejecutar programas• esta máquina se pue<strong>de</strong> replicar por tiempo compartido• se pue<strong>de</strong>n ejecutar <strong>sistemas</strong> <strong>operativos</strong> completos sobre lamáquina virtual• Ejemp<strong>los</strong>:- JVM (Java virtual machine)- VM-Ware (emula un PC sobre Windows o Linux)- RT-LinuxGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 16FACULTAD DE CIENCIAS14/feb/11


Tipos <strong>de</strong> <strong>sistemas</strong> <strong>operativos</strong> por suestructura (cont.)UNIVERSIDADDE CANTABRIAd) Mo<strong>de</strong>lo cliente-servidor• Se mueven parte <strong>de</strong> <strong>los</strong> servicios <strong>de</strong>l sistema operativo a unacapa superior: servidores• Los programas <strong>de</strong> aplicación son clientes• Se comunican a través <strong>de</strong> un micro-núcleo (privilegiado)Applic. Applic. Servidor<strong>de</strong>procesosAPI APIServidor<strong>de</strong>memoriaMicro-núcleoHardwareServidor<strong>de</strong>I/OServidorarchivosdirectoriosServidor<strong>de</strong>re<strong>de</strong>sGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 17FACULTAD DE CIENCIAS14/feb/11Tipos <strong>de</strong> <strong>sistemas</strong> <strong>operativos</strong> por suestructura (cont.)UNIVERSIDADDE CANTABRIALos <strong>sistemas</strong> cliente-servidor (cont.)• Son más flexibles• Pero menos eficientes• Ejemplo: Minix (Tanenbaum 1998), Mach (Accetta, 1986)• Windows NT/2000/XP es mezcla <strong>de</strong> un sistema monolítico (poreficiencia) y cliente-servidor (por flexibilidad)GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 18FACULTAD DE CIENCIAS14/feb/11


Tipos <strong>de</strong> sistema operativo por susserviciosUNIVERSIDADDE CANTABRIAPor el número <strong>de</strong> usuarios• <strong>sistemas</strong> empotrados:- sin usuarios directos- forman parte <strong>de</strong> un sistema mayor- ejemplo: controlador <strong>de</strong> un televisor• <strong>sistemas</strong> monousuario:- un solo usuario- ejemplo: Windows 98• <strong>sistemas</strong> multiusuario- muchos usuarios- presenta protección entre usuarios- ejemp<strong>los</strong>: Unix, Windows XP profesionalGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 19FACULTAD DE CIENCIAS14/feb/11Tipos <strong>de</strong> sistema operativo por susservicios (cont.)UNIVERSIDADDE CANTABRIAPor el nivel <strong>de</strong> protección (se protegen datos <strong>de</strong> una aplicación y<strong>de</strong>l sistema operativo frente a otras aplicaciones)• protegidos (Unix, Windows XP profesional)• semi-protegidos (Windows 98)• no protegidos (Windows 3.1)Por la capacidad <strong>de</strong> concurrencia• monoproceso y monotarea: un solo programa con un solo flujo<strong>de</strong> control (MS-DOS)• multitarea: capaz <strong>de</strong> ejecutar un solo programa, pero varias <strong>de</strong>sus partes a la vez (MaRTE OS)• multiproceso: capaz <strong>de</strong> ejecutar varios programas a la vezGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 20FACULTAD DE CIENCIAS14/feb/11


4. Concepto <strong>de</strong> programa y procesoUNIVERSIDADDE CANTABRIAPrograma:• es un fichero ejecutable, que resi<strong>de</strong> en el disco• generalmente creado mediante un compiladorProceso:• es una instancia <strong>de</strong> un programa que está siendo ejecutada• un mismo programa se pue<strong>de</strong> ejecutar varias veces a la vez,dando lugar a varios procesos• es la unidad <strong>de</strong> concurrencia básica• tiene un espacio <strong>de</strong> direcciones propio- esto proporciona protecciónGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 21FACULTAD DE CIENCIAS14/feb/11Servicios <strong>de</strong> procesosUNIVERSIDADDE CANTABRIACrear un proceso• a partir <strong>de</strong> un proceso padre, como una copia <strong>de</strong> él (UNIX)• a partir <strong>de</strong> un fichero ejecutable en el disco (Win32)Ejecutar un proceso• arrancado por el sistema: proceso por lotes o batch• arrancado por el usuario: proceso interactivoTerminar un proceso• terminación normal• terminación por un error• otro proceso o el usuario lo terminanGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 22FACULTAD DE CIENCIAS14/feb/11


Servicios <strong>de</strong> procesos (cont.)UNIVERSIDADDE CANTABRIACambiar el programa <strong>de</strong> un proceso• el proceso <strong>de</strong>ja <strong>de</strong> ejecutar el programa actual• y pasa a ejecutar otro que está en un fichero en discoEsperar a que un proceso termine• normalmente es un hijo• se pue<strong>de</strong> esperar a uno o variosGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 23FACULTAD DE CIENCIAS14/feb/115. Concurrencia: gestión <strong>de</strong> procesos ythreadsUNIVERSIDADDE CANTABRIAThread:• un flujo <strong>de</strong> control simple perteneciente a un proceso• todos <strong>los</strong> threads <strong>de</strong> un proceso comparten un único espacio <strong>de</strong>direccionamiento• tienen un estado menos voluminoso que <strong>los</strong> procesos• son más eficientes• no tienen jerarquía padre-hijoProceso en una implementación multi-thread:• un espacio <strong>de</strong> direccionamiento con uno o varios threads• inicialmente contiene un solo thread: el thread principal• luego se pue<strong>de</strong>n crear másGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 24FACULTAD DE CIENCIAS14/feb/11


Servicios asociados a <strong>los</strong> threadsUNIVERSIDADDE CANTABRIACrear threads• se especifica una función a ejecutarTerminar un threadEsperar a la terminación <strong>de</strong> un thread• sólo a uno concretoGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 25FACULTAD DE CIENCIAS14/feb/11Comunicación y sincronización entreprocesosUNIVERSIDADDE CANTABRIAComunicaciones locales• eventos y variables condicionales: sincronización <strong>de</strong> espera• señales: notificación <strong>de</strong> sucesos• mensajes: envío <strong>de</strong> datos y posible sincronización <strong>de</strong> espera• datos compartidos: sincronización <strong>de</strong> acceso mutuamenteexclusivoComunicaciones remotas• mediante re<strong>de</strong>s <strong>de</strong> comunicación y• protoco<strong>los</strong> <strong>de</strong> comunicaciónGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 26FACULTAD DE CIENCIAS14/feb/11


6. Gestión <strong>de</strong> memoriaUNIVERSIDADDE CANTABRIAGestión <strong>de</strong> memoria virtualEspacio <strong>de</strong> Direcciones<strong>de</strong>l proceso AMemoriafísicaEspacio <strong>de</strong> direcciones<strong>de</strong>l proceso BMem. Comp.Mem. Comp.Mem. Comp.Incluye <strong>los</strong> mecanismos <strong>de</strong> memoria compartidaGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 27FACULTAD DE CIENCIAS14/feb/11Gestión <strong>de</strong> espacios <strong>de</strong> direccionesvirtualesUNIVERSIDADDE CANTABRIALos procesos requieren estos servicios:• asignarles memoria• liberar memoria que ya no se necesita• protección <strong>de</strong> accesos incorrectos• compartir memoria• <strong>de</strong>sconectar la memoria virtual para procesos <strong>de</strong> tiempo realGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 28FACULTAD DE CIENCIAS14/feb/11


7. Ficheros y el sistema <strong>de</strong> ficherosUNIVERSIDADDE CANTABRIALos ficheros son objetos abstractos que:• se i<strong>de</strong>ntifican mediante un nombre• se pue<strong>de</strong>n leer y escribir (excepto <strong>los</strong> directorios)• representan:- ficheros normales: resi<strong>de</strong>n en memoria secundaria- directorios: contienen otros ficheros o directorios- dispositivos orientados al carácter- dispositivos orientados a bloque- tuberías (pipes) o ficheros especiales FIFOGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 29FACULTAD DE CIENCIAS14/feb/11El sistema <strong>de</strong> ficherosUNIVERSIDADDE CANTABRIAEl sistema <strong>de</strong> ficheros es una colección <strong>de</strong> ficheros junto a <strong>los</strong>atributos que <strong>los</strong> caracterizan• nombre• tipo• tamaño• propietario• fecha y hora <strong>de</strong> creación, modificación y acceso• permisos <strong>de</strong> acceso (lectura, escritura y ejecución)• enumeración <strong>de</strong> <strong>los</strong> bloques <strong>de</strong>l disco don<strong>de</strong> se almacena elfichero (si es <strong>de</strong> tipo normal)Tiene una estructura jerárquica <strong>de</strong> directoriosGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 30FACULTAD DE CIENCIAS14/feb/11


El sistema <strong>de</strong> ficheros (cont.)UNIVERSIDADDE CANTABRIA/disco1binhome1P1f3cosasjuan ana pepef1f2prueba.adbf2lis.adbP1pract1.adblis.adsGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 31FACULTAD DE CIENCIAS14/feb/11Servicios relativos a <strong>los</strong> ficherosUNIVERSIDADDE CANTABRIACrear:• permite crear en el disco un fichero vacío en un directorio;generalmente también lo abreAbrir:• permite crear una estructura <strong>de</strong> datos para manipular un ficheroya existenteCerrar:• borra la estructura <strong>de</strong> datos creada al abrir el ficheroObtener <strong>los</strong> atributos <strong>de</strong> un fichero: tamaño, tipo, permisos, ...Leer y escribirGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 32FACULTAD DE CIENCIAS14/feb/11


Servicios relativos a <strong>los</strong> ficheros(cont.)UNIVERSIDADDE CANTABRIAUso <strong>de</strong> un fichero:Se abre o crea el ficheroSe usa para leer o escribirSe cierraSi es preciso, se borraMuchos <strong>de</strong> estos servicios están accesibles <strong>de</strong>s<strong>de</strong> el lenguaje <strong>de</strong>programación• pero otros noGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 33FACULTAD DE CIENCIAS14/feb/11Servicios relativos a <strong>los</strong> directoriosUNIVERSIDADDE CANTABRIACrear un directorioBorrar un directorioAbrir un directorio• para operar con élLeer un directorio• recorriendo la lista <strong>de</strong> sus archivosCerrar un directorioGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 34FACULTAD DE CIENCIAS14/feb/11


8. Entrada/salidaUNIVERSIDADDE CANTABRIAGestión <strong>de</strong> la entrada/salida:• facilita el uso <strong>de</strong> <strong>los</strong> dispositivos <strong>de</strong> entrada/salida- optimizando el acceso según la velocidad <strong>de</strong>l dispositivo- notificando a la aplicación sobre el estado <strong>de</strong>l dispositivo• ofrece mecanismos <strong>de</strong> protección frente a <strong>los</strong> usuarios• gestiona dispositivos <strong>de</strong> diversos tipos:- <strong>de</strong> caracteres: por interrupciones o consulta- <strong>de</strong> bloques: por acceso directo a memoriaLos dispositivos <strong>de</strong> entrada/salida se asimilan a ficherosGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 35FACULTAD DE CIENCIAS14/feb/11Servicios <strong>de</strong> entrada/salidaUNIVERSIDADDE CANTABRIALeer <strong>de</strong> un fichero o dispositivo• <strong>de</strong>positando <strong>los</strong> datos en una variable en memoriaEscribir en un fichero o dispositivo• datos almacenados en una variable en memoriaControl <strong>de</strong>l funcionamiento <strong>de</strong>l dispositivo• <strong>de</strong>pen<strong>de</strong> por completo <strong>de</strong>l dispositivo concreto• por ejemplo:- cambiar la calidad <strong>de</strong> impresión (impresora)- cambiar la resolución (pantalla)- cambiar la velocidad <strong>de</strong> transmisión (línea <strong>de</strong> comunicación)GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 36FACULTAD DE CIENCIAS14/feb/11


Servicios <strong>de</strong> entrada/salida (cont.)UNIVERSIDADDE CANTABRIAReposicionar el puntero <strong>de</strong> lectura/escrituraSincronizar la escritura <strong>de</strong> datos• es <strong>de</strong>cir, volcar físicamente <strong>los</strong> datos <strong>de</strong> las estructuras <strong>de</strong>datos intermedias al dispositivo finalGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 37FACULTAD DE CIENCIAS14/feb/119. Sistemas multiusuario y protecciónUNIVERSIDADDE CANTABRIALa seguridad requiere dos tipos <strong>de</strong> servicios:• autenticación <strong>de</strong> usuarios- por ejemplo, mediante nombre <strong>de</strong> usuario y contraseña• permisos- asociados a <strong>los</strong> recursos: lista <strong>de</strong> control <strong>de</strong> accesos con susmodos <strong>de</strong> uso• privilegios- asociados a <strong>los</strong> usuarios: lista <strong>de</strong> capacida<strong>de</strong>s (cosas que unusuario pue<strong>de</strong> hacer)- generalmente existen usuarios privilegiados: superusuario oadministrador <strong>de</strong>l sistemaGRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González, J. Javier Gutiérrez 38FACULTAD DE CIENCIAS14/feb/11

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!