Sistemas operativos

42
FUNDAMENTOS DE SISTEMAS OPERATIVOS Lic. Raul Quevedo Garcia

Transcript of Sistemas operativos

FUNDAMENTOS DE SISTEMAS OPERATIVOS

Lic. Raul Quevedo Garcia

INTRODUCCIÓN

Los sistemas operativos son una parte esencial de cualquier sistema informático. Del mismo modo, un curso sobre sistemas operativos es una parte esencial de cualquier carrera de Informática o Electrónica. Este campo está cambiando muy rápidamente, ya que ahora las computadoras se encuentran prácticamente en cualquier aplicación, desde juegos para niños hasta herramientas de planificación extremadamente sofisticadas para los gobiernos y las grandes multinacionales.

CONCEPTOS DE SISTEMAS OPERATIVOS

Un sistema operativo es el software encargado de ejercer el control y coordinar el uso del hardware entre diferentes programas de aplicación y los diferentes usuarios. Es una administrador de los recursos de hardware del sistema.Es un conjunto de programas que por medio de abstracciones ponen al hardware del ordenador de modo seguro, a disposición de un usuario.H. Deitel: Un sistema operativo es un programa que actúa como interfaz entre el usuario y el ordenador.Madnik y Donovan: conjunto de programas que gestionan los recursos del sistema operativo.

Puntos de vista de un SO Punto de vista del Usuario

• La visión del usuario de la computadora varía de acuerdo con la interfaz que utilice. El objetivo es maximizar el trabajo (o el juego) que el usuario realice.

• El sistema operativo se diseña principalmente para que sea de fácil uso, prestando cierta atención al rendimiento y ninguna a la utilización de recursos.Punto de vista del SO

• Desde el punto de vista de la computadora, el sistema operativo es el programa más íntimamente relacionado con el hardware. En este contexto, podemos ver un sistema operativo como un asignador de recursos.

¿Por qué son interesantes los Sistemas Operativos?Combinan aspectos referentes a distintas áreas relacionadas con los computadores: Lenguajes, hardware, estructura de datos, algoritmos , etc.Se convierten en sistemas software grandes complejos , por lo tanto es necesario abordarlos de una manera estructurada.

•Ser Interfaz sistema - usuario•Compartir los recursos de hardware entre los usuarios.•Permitir a los usuarios compartir datos entre ellos.•Prevenir que las actividades de un usuario no interfieran en las de los demás.•Calendarizar los recursos de los usuarios.•Facilitar el acceso a los dispositivos de E/S•Recuperarse de fallas o errores.•Llevar el control sobre los recursos.

¿Cuál es su utilidad?

Niveles de abstracción de un Computador.

NIVEL FUNCIÓNLenguajes de alto nivel Expresan los algoritmos de

una manera adecuada a la capacidad cognitiva humana, en lugar de a la capacidad ejecutora de las máquinas.

Aplicación Tipo de programa informático diseñado como herramienta para permitir a un usuario realizar uno o diversos tipos de trabajo.

Niveles de abstracción de un Computador.

¿ Cuántos tipos de sistemas operativos existen?

Dependiendo de las funciones incluidas tendremos diferentes Sistemas Operativos, como:

•MS –DOS•Windows 3.1•Windows 95•Windows NT•Solaris•Ubuntu•Kubuntu•Fedora•Unix•Linux•Android

¿Cuál es la diferencia entre ellos?

•Interfaz con el usuario•Capacidad de administrar Información (32 y 64 bits)•Seguridad en la Red•Tipo de Source (Fuente) •Estabilidad•Movilidad y adaptación con otras Arquitecturas.

Funciones de un Sistema Operativo

Funciones de un Sistema Operativo

• Administra la distribución del procesador entre los distintos programas por medio de un algoritmo de programación.

Administración del

procesador: • Gestiona el espacio de memoria asignado para cada aplicación y para cada usuario, si resulta pertinente. Cuando la memoria física es insuficiente, el sistema operativo puede crear una zona de memoria en el disco duro, denominada "memoria virtual".

Gestión de la memoria de acceso

aleatorio: • Permite unificar y controlar el acceso de los programas a los recursos materiales a través de los drivers (también conocidos como administradores periféricos o de entrada/salida).

Gestión de entradas/salid

as• Se encarga de que las aplicaciones se ejecuten sin problemas asignándoles los recursos que éstas necesitan para funcionar. Esto significa que si una aplicación no responde correctamente puede "sucumbir".

Gestión de ejecución de aplicaciones

Funciones de un Sistema Operativo

• Se encarga de la seguridad en relación con la ejecución de programas garantizando que los recursos sean utilizados sólo por programas y usuarios que posean las autorizaciones correspondientes.

Administración de

autorizaciones

• Gestiona la lectura y escritura en el sistema de archivos, y las autorizaciones de acceso a archivos de aplicaciones y usuarios.

Gestión de archivos

• Proporciona cierta cantidad de indicadores que pueden utilizarse para diagnosticar el funcionamiento correcto del equipo

Gestión de la

información

Componentes de un Sistema Operativo

Componentes del SO

Núcleo

Interprete de

Comandos

Sistema de Archivos

Llamadas al Sistema

Programas del

SistemaProgramas

de Aplicación

NUCLEOEs el principal responsable de facilitar a los distintos programas acceso seguro al hardware de la computadora o en forma más básica, es el encargado de gestionar recursos, a través de servicios de llamada al sistema. Como hay muchos programas y el acceso al hardware es limitado, también se encarga de decidir qué programa podrá hacer uso de un dispositivo de hardware y durante cuánto tiempo, lo que se conoce como multiplexado

NÚCLEO - FUNCIONES• Manejo de interrupciones. • Creación y destrucción de procesos.• Cambio de estado de los procesos. • Suspensión y reanudación de procesos. • Sincronización de procesos. • Comunicación entre procesos. • Manipulación de los bloques de control de procesos. • Apoyo para las actividades de entrada/salida. • Apoyo para asignación y liberación de memoria. • Apoyo para el mecanismo de llamada y retorno de un

procedimiento.

SHELL - INTÉRPRETE DE COMANDOSEs el proceso encargado de traducir los comandos que los usuarios introducen, a instrucciones que el sistema operativo entiende. Permite al usuario controlar los periféricos sin conocer las características del hardware utilizado, la gestión de las direcciones físicas, etcétera.

SHELL - INTÉRPRETE DE COMANDOS

Los shells de los sistemas operativos generalmente caen en dos categorías según su interfaz:

* Línea de comandos (CLI)* gráficos (GUI)

CLI (COMMAND LINE INTERFACE)

Tipo de interfaz para manipular un programa o sistema operativo con instrucciones escritas.

Cada instrucción es escrita en una línea de texto y suelen ejecutarse al presionar ENTER. También se suele permitir archivos scripts para la ejecución automática de varias líneas de comandos que cumplen alguna función.

CLI- COMANDOSComandos internos CD o CHDIR - Cambia el directorio actual.

CD nombre_directorio Cambia al directorio jerárquicamente inferior. CLS - Limpia todos los comandos y toda la información que hay en

pantalla, excepto el incitador de comandos (prompt) usualmente la letra y ruta de la unidad usada (Por ejemplo C:\>)

COPY - Copiar un archivo de un directorio a otro COPY CON Copia a un archivo los caracteres introducidos en pantalla

(CONsola) DIR - Lista los directorios y archivos de la unidad o directorio actual. PROMPT- Cambia la línea de visualización de la orden. MD - Crea un nuevo directorio. RD o RMDIR- Elimina un directorio. REM - Permite insertar comentarios en archivos de proceso por lotes. REN o RENAME - Renombra archivos y directorios. TIME - Visualiza o cambia la hora del reloj interno. TYPE - Muestra el contenido de un fichero. Se utiliza, principalmente,

para ver contenidos de ficheros en formato texto. VER - Muestra la versión del Sistema Operativo. VOL - Muestra la etiqueta del disco duro y su volumen (si lo tiene). MEM - Muestra la cantidad de memoria RAM, la cantidad ocupada y la

libre.

CLI- COMANDOSComandos externos APPEND - Sirve para especificar trayectorias para ficheros de datos. BACKUP - Ejecuta una copia de seguridad de uno o más archivos de un

disco duro a un disquete. CHKDSK - Verifica si hay errores en el disco duro. (También se puede

utilizar para corregirlos con el parámetro "/F") DELTREE - Borra un directorio sin importar que contenga subdirectorios

con todos sus contenidos. DISKCOPY - Permite hacer una copia idéntica de un disquete a otro,

pertenece al grupo de las órdenes externas. DOSKEY - Permite mantener residentes en memoria RAM las órdenes que

han sido ejecutadas en el punto indicativo. FC - Compara ficheros. FORMAT - Permite crear la estructura lógica, en una unidad física de

almacenamiento (discos duros, disquetes y unidades de almacenamiento masivo).

PRINT - Permite imprimir ficheros.

CLI - COMANDOSParámetros combinados:

KEYB - Establece el idioma del teclado según el parámetro adicionado (Ejemplo: KEYB SP para el teclado español).

LABEL - Muestra o cambia la etiqueta de la unidad de disco duro.

MEM - Muestra la memoria RAM, el espacio ocupado y el espacio libre.

MOVE - Mueve o cambia de posición un directorio y/o ficheros. También renombra subdirectorios.

TREE - muestra los directorios en forma de ARBOL

SHELL - GUI

VENTANAS

ENTORNO GRÁFICO

SHELL - GUI

Conjunto de formas y métodos que posibilitan la interacción de un sistema con los usuarios utilizando formas gráficas e imágenes. Con formas gráficas se refiere a botones, íconos, ventanas, fuentes, etc. los cuales representan funciones, acciones e información.

El sistema operativo Windows utiliza el Explorer como su propio shell.

El Explorer provee el entorno de escritorio típico de Windows con la barra de Inicio, la barra de tareas, etc.

¿Que hace el núcleo? encargado de gestionar recursos, a través de servicios de llamada al sistema.¿Qué hace el shell ? Es el proceso encargado de traducir los comandos que los usuarios introducen, a instrucciones que el sistema operativo entiende. Los shells de los sistemas operativos generalmente caen en dos categorías según su interfaz ¿Cuáles son? * Línea de comandos (CLI)* gráficos (GUI)

Sistema de archivos

El sistema de archivos se basa en la administración de clústers, la unidad de disco más chica que el sistema operativo puede administrar, permite que los archivos se registren en una estructura arbórea.

Llamadas al Sistema (system call)Es el mecanismo usado por una aplicación para solicitar un servicio al sistema operativo.Dado que el hardware es compartido por múltiples procesos, el acceso a los recursos debe ser administrado para garantizar su correcto uso y evitar problemas de seguridad (si procesos malintencionados desean acceder a recursos asignados a otros procesos). Por estas razones, en los sistemas duales, el acceso al ambiente físico es manejado exclusivamente por el Sistema Operativo.

Programas del Sistema

programas del sistema

Compiladores

Ensambladores

Editores

Utilerías

Bibliotecas

PROGRAMAS DEL SISTEMA

COMPILADORES: Son programas que traducen Programas Fuente en programas Objeto, Un compilador es un programa informático que traduce un programa escrito en un lenguaje de programación a otro lenguaje de programación, generando un programa equivalente que la máquina será capaz de interpretar.

ENSAMBLADORES: se refiere a un tipo de programa informático que se encarga de traducir un fichero fuente escrito en un lenguaje ensamblador, a un fichero objeto que contiene código máquina

PROGRAMAS DEL SISTEMA UTILERIAS:

En informática, una utilidad es una herramienta que sirve de soporte para la construcción y ejecución de programas, en donde se incluyen lasbibliotecas de sistema, middleware, herramientas de desarrollo, etc.

PROGRAMAS DEL SISTEMAUTILERIAS DEL SISTEMA

PROGRAMAS DEL SISTEMAUTILERIAS - CLASIFICACIÓN

A) UTILERÍAS DEL SISTEMA

Se ejecutan bajo el control del sistema operativo y se utilizan para preparar algunos recursos usados por el sistema. Son de uso interno.

B) UTILERÍAS PARA ARCHIVOS

Manejan información de los archivos tales como imprimir, clasificar, copiar, etc.

C) UTILERÍAS INDEPENDIENTES

Realizar funciones que se relacionan con la iniciación de dispositivos de Entrada/Salida,  carga del sistema operativo, etc.

PREGUNTAS¿Qué es Sistema de archivos?

¿Qué es COMPILADOR? es un programa informático que traduce un programa escrito en un lenguaje de programación a otro lenguaje de programación, generando un programa equivalente que la máquina será capaz de interpretar.¿ENSAMBLADOR? Es un tipo de programa informático que se encarga de traducir un fichero fuente escrito en un lenguaje ensamblador, a un fichero objeto que contiene código máquinaPROGRAMAS DEL SISTEMA UTILERIAS – CLASIFICACIÓNUTILERÍAS DEL SISTEMA, UTILERÍAS PARA ARCHIVOS y UTILERÍAS INDEPENDIENTES.

PROGRAMAS DEL SISTEMABIBLIOTECAS Es un conjunto de subprogramas utilizados

para desarrollar software. Las bibliotecas contienen código y datos, que proporcionan servicios a programas independientes, es decir, pasan a formar parte de éstos. Esto permite que el código y los datos se compartan y puedan modificarse de forma modular.

PROGRAMAS DEL SISTEMAProgramas de Aplicación

Un programa de aplicación es un tipo de software diseñado para facilitar al usuario la concreción de un cierto trabajo.

Los procesadores de texto, las hojas de cálculo y las bases de datos son programas de aplicación, estas demuestran que las aplicaciones informáticas posibilitan la automatización de tareas.

ARRANQUE DEL SISTEMA

El procedimiento de inicialización de una computadora mediante la carga del kernel se conoce como arranque del sistema. En la mayoría de los sistemas informáticos, una pequeña parte del código, conocida como programa de arranque o cargador de arranque, se encarga de localizar el kernel, lo carga en la memoria principal e inicia su ejecución.

ARRANQUE DEL SISTEMAProcedimiento Básico

Encendido Programa de Arranque

Post (Power on self - test)

Carga del Sistema

Operativo

Chequeo de la

Configuración

Sector de Arranque

Carga Boot Manager y Carga del S. O.

ENCENDIDO ¿Cuál es la primera cosa que sucede cuando

usted enciende la computadora? El encendido de la computadora, es la primera etapa en el proceso de arranque y consiste en dar energía eléctrica a todos los circuitos de la computadora, lo primero que sucede en esta etapa es que el fan (abanico) del power suplí comienza a girar y el power light (indicador de encendido, en nuestro caso un led) en el case o CPU se enciende.

ARRANQUE DEL SISTEMA

PROGRAMA DE ARRANQUE Cuando usted energiza la computadora, el

microprocesador comienza a ejecutar el "Programa de arranque que esta almacenado en la memoria ROM.

BIOS (Basic Input-Output System ) Sistema de entrada/salida básico que contiene un

código de software que localiza y reconoce todos los dispositivos necesarios para arrancar el Sistema Operativo y de cargar toda la memoria RAM, suele tratarse de uno o varios chips de memoria ROM (habitualmente EPROMs) que contienen las rutinas básicas de entrada y salida, los primeros pasos que debe dar un ordenador al encenderse, la configuración básica del sistema, etc.

Este es la interface entre el Hardware y el Sistema operativo.

Sin el chip de memoria ROM, los módulos de la RAM estarán mal funcionando, el microprocesador estará deshabilitado para correr el programa de arranque y la computadora parara (stop) o se "hangs" (se colgara o frisará).

ARRANQUE DEL SISTEMA

POST (POWER ON SELF - TEST)

Microprocesador

Tarjeta de Video RAM TECLADO

UNIDADES DE DISCO (DRIVERS)

La próxima etapa en el proceso de arranque es la auto prueba de encendido en la cual se diagnostican problemas en la computadora.

ARRANQUE DEL SISTEMA

CARGA DEL SISTEMA OPERATIVO

¿Cómo la computadora encuentra el Sistema Operativo para cargarlo en la RAM?

La computadora primero chequea el driver A: si hay un CD aquí convierte al driver A: en el driver por defecto (driver o unidad de arranque). Si no encuentra un disco en el driver A, el driver C: será el driver por defecto, luego la computadora busca los archivos del Sistema Operativo.

Lo primero que hace es buscar dos archivos del Sistema Operativo: Io.sys y Msdos.sys. si esos archivos no existen o no están en el disco duro.

Sino hay problema el microprocesador procede a cargar otro archivo del Sistema Operativo llamado: Command.com, si existe problemas con este archivo se muestra un mensaje de error en la pantalla: "Bad o missing command interprete".

ARRANQUE DEL SISTEMA

SECTOR DE ARRANQUE

Superadas todas las pruebas, el programa de arranque de la BIOS chequea las unidades de almacenamiento disponibles y configuradas en el SETUP, para determinar la unidad de inicio, en la que encontrará el sector de arranque (MBR – MASTER BOOT RECORD) con el programa de puesta en marcha del sistema operativo, ubicada en la partición primaria del Disco Duro.

ARRANQUE DEL SISTEMA

Carga Boot Manager y Carga del S. O. Una vez encontrado el archivo de inicialización del

S.O. se cargará en memoria y se ejecutará para poder cederle el control del ordenador.

El proceso de arranque esta finalizado cuando su computadora esta lista para aceptar comando y datos. Usualmente la computadora muestra la pantalla principal de su sistema operativo, si se usa Windows será el escritorio de Windows si esta usando el DOS será el promt*

ARRANQUE DEL SISTEMA

CARGA DEL SISTEMA OPERATIVO EN OTROS DISPOSITIVOS

Algunos sistemas, como los teléfonos móviles, los PDA (Asistente Digital Personal) y las consolas de juegos, almacenan todo el sistema operativo en ROM. El almacenamiento del sistema operativo en ROM resulta adecuado para sistemas operativos pequeños, hardware auxiliar sencillo y dispositivos que operen en entornos agresivos. Un problema con este método es que cambiar el código de arranque requiere cambiar los chips de la ROM. Algunos sistemas resuelven este problema usando una EPROM (erasable programable read-only memory), que es una memoria de sólo lectura excepto cuando se le proporciona explícitamente un comando para hacer que se pueda escribir en ella. Todas las for mas de ROM se conocen también como firmware, dado que tiene características intermedias entre las del hardware y las del software.

ARRANQUE DEL SISTEMA

REINICIACIÓN DE UN PC

Cuando una CPU recibe un suceso de re inicialización (por ejemplo, cuando se enciende o reinicia), el registro de instrucción se carga con una posición de memoria predefinida y la ejecución se inicia allí. En dicha posición se encuentra el programa inicial de arranque. Este programa se encuentra en memoria de sólo lectura (ROM, read-only memory), dado que la RAM se encuentra en un estado desconocido cuando se produce el arranque del sistema. La ROM sí resulta adecuada, ya que no necesita inicialización y no puede verse infectada por un virus informático.

ARRANQUE DEL SISTEMA