3. Sistemas operativos

Documentos relacionados
3. Sistemas operativos

TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO. Definición y objetivos de un S.O

Introducción a los Sistemas Operativos

TEMA 2: Sistemas Operativos

Herramientas Informáticas I Software: Sistemas Operativos

Introducción. Aparición en los 50, se facilita la comunicación entre el usuario y el ordenador Cualquier persona puede utilizar un ordenador.

Tema 1: Arquitectura de ordenadores, hardware y software

Qué es un programa informático?

CONCEPTOS BÁSICOS COMPUTADORA

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

1-Componentes Físicos y Lógicos de un Ordenador.

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

PREGUNTAS INFORMÁTICA MONITOR UPB EXAMEN 1

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

SISTEMA OPEATIVO DEFINICIÓN

Computadora y Sistema Operativo

Introducción a la Operación de Computadoras Personales

PASOS PARA INSTALAR EL SISTEMA OPERATIVO LINUX DISTRIBUCION CENTOS

La última versión disponible cuando se redactó este manual era la 5 Beta (versión ), y sobre ella versa este manual.

Qué es el Software? Son las instrucciones responsables de que el hardware realice su tarea.

Tema 6 Organización y gestión de la memoria

Objetos de aprendizaje: Computadora

Introducción a la Computación. Herramientas Informáticas. Omar Ernesto Cabrera Rosero Universidad de Nariño

Servicios del Sistema Operativo (SO)

Manipulación de procesos

Fundamentos de las TIC

CURSO BÁSICO DE ALFABETIZACIÓN DIGITAL CENTRO INFORMÁTICO EMPEDRADO CONTENIDO: ELEMENTOS BÁSICOS DE

Usuario. Programas de Aplicación. Sistema Operativo. Hardware. Figura 1. Sistema de cómputo estructurado por capas.

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

TEMA: LOS SISTEMAS OPERATIVOS

Comandos Básicos de Linux

Parte I:Teoría. Tema 3:Introducción a los Sistemas operativos. Instalación

Fundamentos de los Sistemas Operativos. Tema 1. Conceptos generales Estructura del sistema operativo ULPGC - José Miguel Santos Espino

Usando el Sistema Operativo

Actividades de Teoría de Sistemas Operativos Sistemas informáticos multiusuario y en red

ELEMENTOS QUE COMPONEN UNA COMPUTADORA

Ejercicio 1: Windows En este primer ejercicio primero vamos a ver que es el Sistema Operativo Windows, qué es un Sistema Operativo y para que sirve.

Ordenador local + Servidor Remoto

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

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

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

El Sistema Operativo Linux

Recopilación presentada por 1

SISTEMAS OPERATIVOS Arquitectura de computadores

Guía de uso del programa AVR-Studio

FUNCIONAMIENTO DEL ORDENADOR

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

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

Enteros. Son los números que no contienen componentes fraccionarios y, por tanto, no contienen punto decimal.

ESTRUCTURA BÁSICA DE UN ORDENADOR

1. Computadores y programación

Sistemas Operativos. Curso 2016 Sistema de Archivos

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

ADMINISTRACION DE LA MEMORIA. En memoria 1 solo proceso Desventajas:

ENSAMBLE Y MANTENIMIENTO DE COMPUTADORES

Unidad I Introducción a la programación de Sistemas. M.C. Juan Carlos Olivares Rojas

Partes Internas y Externas de la Computadora

Unidad I: Organización del Computador. Ing. Marglorie Colina

Técnicas de Programación

Pontificia Universidad Católica del Ecuador

Clasificación n de los Sistemas Operativos. Clasificación de los SO Estructuras de los SO Modos de procesamiento

Lenguaje binario. Código ASCII. Medidas de la información

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

Introducción a los Sistemas Operativos

Sistemas Operativos. Introducción. Tema 6

TERMINAL DE COMANDOS (RED HAT, CENTOS Y FEDORA)

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

Interprete comandos de Windows.

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?

Versión: 01. Fecha: 26 /01 /2016. Código: F004-P006-GFPI GUÍA TALLER DE APRENDIZAJE N.1: EL COMPUTADOR 1. IDENTIFICACIÓN DE LA GUIA DE APRENDIZAJE

F1131 Fundamentos de sistemas operativos 1/12

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

Seleccione en el escritorio el programa Sucosoft S40 y darle doble click.

Práctica 0: Entorno de Windows

Virus Informáticos. k. Antecedentes de los virus informáticos (10 pts.) i. Características de los virus informáticos (10 pts.)

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

SELECCIÓN DE COMPONENTES PARA ENSAMBLE DE EQUIPOS DE COMPUTO. Ing. Eduardo Cruz Romero

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

TEMA 1: Concepto de ordenador

Programa de la asignatura Curso: 2007 / 2008 SISTEMAS OPERATIVOS (1299)

1

Sistema Operativo. Introducción a los Sistemas Operativos. El Sistema Operatico como Interfaz Usuario/Computador. Objetivos del Sistema Operativo

Threads, SMP y Microkernels. Proceso

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

004. Archivos y directorios

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

IFCT0309 Montaje y Reparación de Equipos Microinformáticos

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.

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

Práctica 2: Sector de arranque

TEMA 2: GESTIÓN DE ARCHIVOS

Academia de Software Libre

I. INTRODUCCIÓN A LOS SISTEMAS TIPO UNIX

Diagramas De Casos De Uso

Linux Completo (Versión Ubuntu 9)

Introducción a los Sistemas Operativos

A la derecha de este botón irán apareciendo todas las aplicaciones abiertas en ese momento en el sistema.

AUTOMATIZACIÓN DE TAREAS REPETITIVAS MEDIANTE GRABACIÓN DE MACROS

Transcripción:

3. Sistemas operativos 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 Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 1 / 33 Contenidos 1 2 3 4 Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 2 / 33

Objetivos 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. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 3 / 33 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. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 4 / 33

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. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 5 / 33 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. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 6 / 33

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. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 7 / 33 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 Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 8 / 33

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. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 9 / 33 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. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 10 / 33

Qué es un proceso? 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. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 11 / 33 Elementos de un proceso Un proceso consta de un espacio de memoria, estructurado en secciones; los registros del procesador. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 12 / 33

de un proceso 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. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 13 / 33 Características un proceso 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. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 14 / 33

de un árbol de procesos A B C D E F Figura: Vista de un árbol de procesos Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 15 / 33 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. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 16 / 33

de un fichero de imagen ejecutable Símbolos Secciones Datos estáticos Instrucciones Cabeceras Figura: de un fichero ejecutable Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 17 / 33 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. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 18 / 33

: modo monoprograma Recursos impresora dispositivos E/S disco puerto USB proceso 2 inicio proc. 1 fin proc. 1 inicio proc. 2 CPU proceso 1 sistema operativo CPU no usada CPU no usada Tiempo Figura: en modo monoprogramación Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 19 / 33 : 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 inicio proc. 2 continúa proc. 2 proc. 2 interrumpido por el s.o. fin proc. 1 sistema operativo Tiempo Figura: en modo multiprogramación Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 20 / 33

: 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. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 21 / 33 : ciclo de vida de un proceso fin, error Nonato distribuidor cancelado, error Finalizado distribuidor Listo fin E/S cancelado, error Activo distribuidor E/S Bloqueado Figura: Diagrama de estados para un proceso Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 22 / 33

Memoria virtual 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. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 23 / 33 Aplicación a Unix/Linux Concepto de fichero y directorio. Directorio de trabajo. Rutas absolutas y relativas. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 24 / 33

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. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 25 / 33 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. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 26 / 33

Aplicación a Unix/Linux 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 Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 27 / 33 Aplicación a Unix/Linux Aplicación a Unix/Linux jerarquía de ficheros; dispositivos como ficheros (virtuales); puntos de montaje. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 28 / 33

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. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 29 / 33 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. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 30 / 33

Interfaz de usuario 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. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 31 / 33 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. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 32 / 33

Programa shell 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. Raúl Durán Díaz, Juan Ignacio Pérez Sanz 3. Sistemas operativos 33 / 33