3. Sistemas operativos

Documentos relacionados
Introducción a los Sistemas Operativos

TEMA 2: Sistemas Operativos

Herramientas Informáticas I Software: Sistemas Operativos

Nombres de archivo. Sistemas Operativos III - ETB EMT - CETP

Tema 1: Arquitectura de ordenadores, hardware y software

Introducción a la Operación de Computadoras Personales

ARQUITECTURA BÁSICA DEL ORDENADOR: Hardware y Software. IES Miguel de Cervantes de Sevilla

Manipulación de procesos

Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria

FUNDAMENTOS DE INFORMÁTICA. Principios Básicos de Sistemas Operativos. Definición de Sistema Operativo

Objetos de aprendizaje: Computadora

1.4.1 Inicio de la computadora por primera vez Hay problemas Causas, síntomas y soluciones a posibles averías...

Ordenador local + Servidor Remoto

Partes Internas y Externas de la Computadora

FUNCIONAMIENTO DEL ORDENADOR

SISTEMAS OPERATIVOS Arquitectura de computadores

ESTRUCTURA BÁSICA DE UN ORDENADOR

Organización de la información en disco: archivos y carpetas

Introducción a los Sistemas Operativos

Sistemas Operativos. Dr. Luis Gerardo de la Fraga. Departamento de Computación Cinvestav

Tema 2 Introducción a la Programación en C.

1. Computadores y programación

4. Escribe con palabras lo que significan las siguientes letras y di cuántos bytes hay aproximadamente: a) 1 Gb? b) 1 Mb? C) 1 Kb?

ENSAMBLE Y MANTENIMIENTO DE COMPUTADORES

Sistemas Operativos. Curso 2016 Sistema de Archivos

Definición de Sistema Operativo

Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo

ATRIBUTOS DE LOS FICHEROS EN LINUX

Introducción a Linux Jornadas Noviembre 2009 GUL UC3M Tania Pérez

Threads, SMP y Microkernels. Proceso

Documento no controladon, sin valor

1

Guía práctica de estudio 02: GNU/Linux

Sistemas Operativos: Programación de Sistemas. Curso Oscar Déniz Suárez Alexis Quesada Arencibia Francisco J.

Sistemas operativos. Hasta ahora hemos visto. Relación programa-sistema operativo Gestión de memoria

VOCABULARIO DEL HARDWARE. Docente Yeni Ávila

(1) Unidad 1. Sistemas Digitales Basados en Microprocesador SISTEMAS BASADOS EN MICROPROCESADORES. Grado en Ingeniería Informática EPS - UAM

Se llama hardware a todos los dispositivos que forman la PC y que se puedan tocar, es decir, es todo el conjunto de accesorios que se le pueden

Práctica 0: Entorno de Windows

El tema de esta presentación es los conceptos básicos relacionados con Sistemas Operativos.

Introducción de SO. Dr. Alonso Ramírez Manzanares 10-Ago-2010

El Sistema Operativo Linux

TERMINAL DE COMANDOS (RED HAT, CENTOS Y FEDORA)

PROCESADORES. Existen 3 tipos de procesadores: DE GALLETA, DE PINES Y DE CONTACTO. DE GALLETA: se utilizaban en las board en los años 80 y 90.

TEMA 1: Concepto de ordenador

Mozilla Firefox. Barra de. Barra de navegación. menús. Barra de. Barra de dirección. marcadores

INFORMATICA I EJERCICIOS PROPUESTOS Buscar en el diccionario Qué es INFORMÁTICA?, Qué es

OPERACIONES CON UNIDADES, DIRECTORIOS Y ARCHIVOS (3 puntos = 1 test + 2 supuesto práctico)

Elementos de un programa en C

Curso avanzado de Linux

0-31 : caracteres de control : carac. Comunes : especiales (flechas, símbolos) y particulares (ñ)

004. Archivos y directorios

Sistemas Operativos. Curso 2014 Estructura de los sistemas operativos

CAPÍTULO 3. Metodología para la elaboración de. manuales de procedimientos

Lenguaje de Programación

La ruta de ubicación del software es \Archivos de programa\btgtmq\driges.vce

DB GENERATOR. Base de datos para USB Media Player. Manual de usuario

EL ORDENADOR A. PERIFÉRICOS. B. UNIDAD CENTRAL. 1. HARDWARE Y SOFTWARE. 2. FUNCIONAMIENTO DE UN SISTEMA INFORMÁTICO 3. CONCEPTO DE SISTEMA INFORMÁTICO

Manual de instalación AutoFirma 1.4.3

IFCT0309 Montaje y Reparación de Equipos Microinformáticos

Todas las tareas que se realizan en un computador implican el uso de archivos y carpetas.

Administración de la producción. Sesión 1: Conceptos básicos de la computadora

Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.

Axence nvision. Funcionalidades de Axence nvision

Tema 2. Software. Fundamentos de Informática Grado en Ingeniería Mecánica

UNIVERSIDAD DEL CARIBE UNICARIBE. Escuela de Informática. Programa de Asignatura

TEMA 3: El proceso de compilación, del código fuente al código máquina

REPRODUCCIÓN Y ARCHIVO

R, R-Commander y R-Excel

IBM SPSS Statistics para Mac OS Instrucciones de instalación (Licencia de sede)

HP - UX. Qué es HP UX?

Sistema Operativo Linux

Algoritmos y solución de problemas. Fundamentos de Programación Otoño 2008 Mtro. Luis Eduardo Pérez Bernal

LÓGICA DE PROGRAMACIÓN

Sistemas Operativos Tema 5. Procesos José Miguel Santos Alexis Quesada Francisco Santana

Estructura del Computador

CICLOS DEL PROCESADOR

Fundamentos de programación. Diagramas de flujo, Diagramas N-S, Pseudocódigo y Java

AUTOMATIZACIÓN INDUSTRIAL

Escala San Martín. InstruccIones para la aplicación InformátIca. Evaluación de la Calidad de Vida de Personas con Discapacidades Significativas

06. GESTIÓN DE PROCESOS Y RECURSOS

Guía rápida para gestionar el puerto paralelo del PC

Tema: Introducción al IDE de Microsoft Visual C#.

Existe en cualquier sistema operativo parecido a UNIX y forma parte de la instalación predeterminada de Linux.

Partes y funciones básicas de un ordenador

Microsoft Office Word

TEMA 2: GESTIÓN DE ARCHIVOS

Interfaces. Carrera: SCF Participantes. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos.

INDICE Parte 1. Visual Basic Capitulo 1. Qué es Visual Basic? Capitulo 22. Mi Primera Aplicación Capitulo 3. Elementos del lenguaje

014. Directorios de sistema

Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main.

Tema 1: Introducción al S.O.

Diseño arquitectónico 1ª edición (2002)

TRABAJO RECUPERACION

UNIDAD 1. COMPONENTES DEL COMPUTADOR

Montaje y Reparación de Equipos Microinformáticos. Certificados de profesionalidad

Equipamiento ADSL» Inalámbrico. Adaptador USB PAUTAS PARA LA VERIFICACION TCP/IP

Introducción a la arquitectura de computadores

1. Almacenamiento redundante

Transcripción:

Informática Ingeniería en Electrónica y Automática Industrial Raúl Durán Díaz Juan Ignacio Pérez Sanz Departamento de Automática Escuela Politécnica Superior Curso académico 26 27

Contenidos Definición de sistema operativo 1 Definición de sistema operativo 2 3 4

Objetivos Definición de sistema operativo Objetivos básicas Comprender el concepto de sistema operativo y su utilidad. Ser capaz de describir los diferentes elementos de que consta y comprender su importancia. Entender el concepto de proceso en el contexto de los sistemas operativos. Entender el concepto de sistema de ficheros. Ser capaz de utilizar los comandos básicos de Linux, manejando la entrada/salida estándar y los comandos concatenados.

Qué es un sistema operativo? Objetivos básicas Definición Un sistema operativo es un programa (o conjunto de programas) de control que tiene por objeto facilitar el uso del computador y conseguir que este uso sea eficiente.

Misiones del sistema operativo Objetivos básicas El sistema operativo proporciona dos servicios fundamentales: extiende las instrucciones de la máquina base; media en los conflictos entre procesos a causa de los recursos.

Máquina extendida u operativa Objetivos básicas El sistema operativo esconde detalles demasiado finos como para que el programador deba ocuparse de ellos. Por ejemplo: cómo se maneja la cabeza de lectura/escritura de un disco magnético. Presenta al usuario-programador una máquina virtual que se maneja de modo mucho más sencillo. Esa máquina virtual está normalmente estandarizada, de manera que un mismo programa puede valer para sistemas operativos distintos si estos ofrecen al usuario-programador la misma interfaz estándar.

Máquina extendida u operativa Objetivos básicas La máquina virtual extiende el repertorio estándar de instrucciones por medio de los llamados system calls o servicios del sistema. Esos servicios del sistema pueden verse como instrucciones extendidas que permiten al programador ampliar sus posibilidades a la hora de programar. Los servicios del sistema constituyen la interfaz entre el programador y el sistema operativo. Los servicios del sistema se dividen en dos categorías esenciales: los que manejan procesos; los que manejan el sistema de ficheros.

Máquina extendida u operativa Objetivos básicas nivel máquina simbólica Compiladores Editores Intérprete de comandos nivel máquina extendida Sistema Operativo nivel máquina real Instrucciones en lenguaje máquina Figura: Posición relativa de las máquinas

Administrador de recursos Objetivos básicas Ejemplo La segunda misión importante del sistema operativo es actuar como árbitro entre los distintos usuarios para manejar los recursos limitados del sistema. Si varios programas quieren escribir en una impresora, hay que arbitrar los medios para que lo hagan en serie, uno detrás de otro, y que no se obstaculicen mutuamente. Ejemplo Mientras un proceso espera un dato del disco, otro puede usar la capacidad de cómputo del procesador.

Definición de sistema operativo Estructura Planificación El elemento ejecutivo fundamental de un sistema computador es el proceso. Un sistema computador en funcionamiento no es más que un conjunto de uno o más procesos en ejecución según diversas posibles planificaciones temporales.

Qué es un proceso? Estructura Planificación Definición Un proceso es, en esencia, un programa en ejecución. Observación Podemos ver un proceso como la instanciación dinámica de un programa. Puede, pues, ocurrir que varios procesos ejecuten (es decir, instancien) el mismo programa.

Elementos de un proceso Estructura Planificación Un proceso consta de un espacio de memoria, estructurado en secciones; los registros del procesador.

Estructura de un proceso Estructura Planificación Vista de un proceso en relación a la memoria virtual y registros: $SP $GP $PC Pila 00000000000000000 11111111111111111 00000000000000000 11111111111111111 Hueco libre (variable) 00000000000000000 11111111111111111 00000000000000000 11111111111111111 Datos dinámicos Datos estáticos Instrucciones Reservado 0Direcciones de memoria crecientes Un proceso necesita manejar registros de la CPU: contador de programa $PC. puntero de pila $SP. puntero a datos dinámicos $GP. registro de estado $PSW.

Características un proceso Estructura Planificación Un proceso solo puede ser creado por otro proceso. Cualquier proceso puede crear a su vez procesos. Se utilizan dos servicios del sistema para crear nuevos procesos: fork: crea una réplica del proceso llamante; exec(p1): pone en ejecución el programa en el archivo ejecutable p1. El servicio del sistema exec se ocupa de trasladar el archivo ejecutable a memoria, dándole la adecuada estructura a cada sección, para que pueda comenzar la ejecución en el contexto del nuevo proceso.

Estructura Planificación Estructura de un árbol de procesos A B C D E F Figura: Vista de un árbol de procesos

Estructura Planificación Arranque (boot) del sistema computador En el momento de arranque de la máquina, hay un solo proceso en ejecución, responsable de ir creando todos los demás. Este proceso está grabado en la imagen de arranque (boot image). El arranque del sistema se ejecuta en varios pasos: Se ejecuta un pequeño código almacenado en memoria no volátil que carga un cargador más potente y lo pone en ejecución. Este segundo cargador carga la imagen del sistema operativo (boot image) y pone en ejecución el primer proceso de esa imagen.

Estructura Planificación Estructura de un fichero de imagen ejecutable Símbolos Secciones Datos estáticos Instrucciones Cabeceras Figura: Estructura de un fichero ejecutable

Estructura Planificación Turno en la ejecución de los procesos El recurso más valioso es el procesador. El procesador solo puede ejecutar un proceso cada vez. Cuando el proceso en ejecución se bloquea (porque espera un dato del disco, por ejemplo) el proceso distribuidor suspende el proceso en curso y selecciona otro que tenga posibilidad de ejecutarse en ese momento de acuerdo con cierta planificación. Cada proceso se describe por el espacio de memoria que usa y por el valor de los registros del procesador en el momento de la suspensión.

Estructura Planificación Planificación: modo monoprograma Recursos impresora dispositivos E/S disco puerto USB proceso 2 inicio proc. 1 fin proc. 1 inicio proc. 2 00 11 00 11 00 11 CPU proceso 1 sistema operativo 0000 1111 0000 1111 CPU no usada 0000 1111 0000 1111 CPU no usada 00 11 00 11 Tiempo Figura: Planificación en modo monoprogramación

Estructura Planificación Planificación: modo multiprograma Recursos impresora E/S proc. 1 E/S proc. 1 dispositivos E/S disco CPU puerto USB proceso 2 proceso 1 inicio proc. 1 0000 1111 0000 1111 0000 1111 inicio proc. 2 continúa proc. 2 proc. 2 interrumpido por el s.o. 0000 1111 0000 1111 0000 1111 0000 1111 0000 1111 0000 1111 0000 1111 00 11 00 11 00 11 00 11 00 11 fin proc. 1 sistema operativo Tiempo Figura: Planificación en modo multiprogramación

Estructura Planificación Planificación: modo turno rotatorio El modo multiprograma tiene el inconveniente de que si un proceso tiene poca E/S, monopoliza demasiado tiempo el procesador. Solución: multiprogramación apropiativa El distribuidor del sistema operativo puede interrumpir un proceso en ejecución, apropiándose del procesador y dando turno a otro proceso que esté listo para ejecutarse.

Estructura Planificación Planificación: ciclo de vida de un proceso fin, error Nonato cancelado, error distribuidor Finalizado distribuidor Listo fin E/S cancelado, error Activo distribuidor E/S Bloqueado Figura: Diagrama de estados para un proceso

Memoria virtual Definición de sistema operativo Estructura Planificación El sistema operativo ofrece al proceso la ilusión de que puede utilizar toda la memoria disponible. Esto se denomina memoria virtual. En realidad, la memoria física que ocupa un proceso puede ser mucho más pequeña. El sistema operativo se encarga de mantener una tablas específicas para cada proceso mediante las cuales realiza la traducción de la dirección de memoria virtual a la dirección física. Así pueden convivir simultáneamente en un sistema más procesos de los que realmente caben en la memoria física de que ese sistema dispone.

Definición de sistema operativo Aplicación a Unix/Linux Concepto de fichero y directorio. Directorio de trabajo. Rutas absolutas y relativas.

Definición de sistema operativo Aplicación a Unix/Linux Definición Abstracción limpia para manejar ficheros con independencia del hardware real que exista. Ejemplo Existen muchos tipos de sistemas de ficheros. Cada sistema operativo soporta unos u otros. Como ejemplo tenemos: ext4, NTFS, FAT32, ReiserFS, ISO9660, etc. Pueden convivir varios simultáneamente en un mismo sistema.

Aplicación a Unix/Linux Servicios del sistema para manejar ficheros El sistema nos da servicios para manejar ficheros: create/open: para crear un fichero nuevo o abrir uno existente; read/write: para leer o escribir en un fichero; close: cerrar el canal de comunicación con un fichero; unlink: borra un fichero de un directorio. Nota Los servicios de manejo de ficheros son independientes del sistema de ficheros usado.

Aplicación a Unix/Linux Estructura de un árbol de directorios raíz clases trabajos pelis ficheros informática física ice-age shrek Figura: Vista de la estructura de ficheros en Unix/Linux

Aplicación a Unix/Linux Aplicación a Unix/Linux jerarquía de ficheros; dispositivos como ficheros (virtuales); puntos de montaje.

Dispositivos y ficheros Aplicación a Unix/Linux Para proporcionar una interfaz coherente, en Unix/Linux se accede a los dispositivos también a través de ficheros. Se trata de fichero especiales, normalmente situados bajo el directorio /dev. Los servicios del sistema que se usan son los mismos que para los ficheros normales.

Aplicación a Unix/Linux Puntos de montaje en el sistema de ficheros Para aumentar el espacio disponible se pueden agregar más discos al sistema de ficheros existente. El nuevo disco ha de contener a su vez un árbol de directorios. Para hacer conocido al sistema el nuevo disco, se utiliza el concepto de punto de montaje. El punto de montaje no es más que un directorio del sistema original bajo el cual se monta el nuevo disco. El usuario ve que aparecen nuevos directorios y archivos bajo un directorio originalmente vacío. No tiene conciencia de en qué disco está escribiendo.

Interfaz de usuario Definición de sistema operativo Concepto Interfaz shell En todo sistema computador siempre existe al menos un proceso para cada usuario que permite a este la interacción con el sistema. En su forma más sencilla, la interfaz consiste en una consola textual donde el usuario puede teclear órdenes. Esas órdenes mandan en su mayor parte poner en ejecución distintos programas que el usuario quiere utilizar. El proceso interfaz recoge esas órdenes, busca los programas correspondientes, los pone en ejecución y dirige hacia la consola la salida que estos programas producen.

Tipos de interfaz de usuario Concepto Interfaz shell Existen varios tipos de interfaces de usuario, cada uno con sus ventajas y sus inconvenientes. Interfaz de ĺınea de órdenes: las órdenes se teclean sobre una terminal obedeciendo a cierta sintaxis. En la misma terminal se muestra también la salida producida. Interfaz de menús: el usuario selecciona las órdenes a partir de un elenco pre-establecido. Interfaz con iconos: las posibles órdenes están simbolizadas con iconos o figuras que se ejecutan al pulsar con el ratón sobre ellas.

Programa shell Definición de sistema operativo Concepto Interfaz shell Se trata de un programa muy completo que funciona en modo interfaz de ĺınea de órdenes. El usuario teclea sus órdenes y el shell las manda ejecutar. Presenta varias características típicas: entrada y salida estándar; concatenación de entrada/salida, tuberías ; variables de entorno; estructura típica de un comando de ĺınea: llamada al comando, argumentos, variable de entorno PATH. algunos comandos muy básicos: ls -l, cd, pwd, mkdir, rmdir, ps -ef, pstree.