Introducción a los Sistemas Operativos

  • 10,066 views
Uploaded on

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
  • buena información en

    http://icomparto.blogdiario.com/1392180351/
    Are you sure you want to
    Your message goes here
  • http://icomparto.blogdiario.com/1392180351/
    Are you sure you want to
    Your message goes here
No Downloads

Views

Total Views
10,066
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
220
Comments
2
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1.  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.
  • 2.  Un sistema operativo es el software encargado de ejercer el control ycoordinar el uso del hardware entre diferentes programas de aplicacióny los diferentes usuarios. Es una administrador de los recursos dehardware del sistema.Es un conjunto de programas que por medio de abstracciones ponenal hardware del ordenador de modo seguro, a disposición de un usuario.H. Deitel: Un sistema operativo es un programa que actúa comointerfaz entre el usuario y el ordenador.Madnik y Donovan: conjunto de programas que gestionan los recursosdel sistema operativo.
  • 3. 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.
  • 4. Combinan aspectos referentes a distintas áreas relacionadas con loscomputadores: Lenguajes, hardware, estructura de datos, algoritmos , etc.Se convierten en sistemas software grandes complejos , por lo tanto esnecesario 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.
  • 5. 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.
  • 6. Dependiendo de las funciones incluidas tendremos diferentes SistemasOperativos, como:•MS –DOS ¿Cuál es la diferencia entre ellos?•Windows 3.1•Windows 95•Windows NT •Interfaz con el usario•Solaris •Capacidad de administrar•Ubuntu Información (32 y 64 bits)•Kubuntu •Seguridad en la Red•Fedora •Tipo de Source (Fuente)•Unix •Estabilidad•Linux •Movilidad y adaptación con•Android otras Arquitecturas.
  • 7. Administración del •Administra la distribución del procesador entre los distintos procesador: programas por medio de un algoritmo de programación. Gestión de la •Gestiona el espacio de memoria asignado para cada aplicación memoria de y para cada usuario, si resulta pertinente. Cuando la memoria física es insuficiente, el sistema operativo puede crear una zona deacceso aleatorio: memoria en el disco duro, denominada "memoria virtual". Gestión de •Permite unificar y controlar el acceso de los programas a los recursos materiales a través de los drivers (también conocidosentradas/salidas como administradores periféricos o de entrada/salida). Gestión de •Se encarga de que las aplicaciones se ejecuten sin problemas ejecución de asignándoles los recursos que éstas necesitan para funcionar. Esto significa que si una aplicación no responde correctamente puede aplicaciones "sucumbir".
  • 8. Administración •Se encarga de la seguridad en relación con la ejecución de programas garantizando que los de recursos sean utilizados sólo por programas y usuariosautorizaciones que posean las autorizaciones correspondientes. Gestión de •Gestiona la lectura y escritura en el sistema de archivos, y las autorizaciones de acceso a archivos archivos de aplicaciones y usuarios.Gestión de la •Proporciona cierta cantidad de indicadores que pueden utilizarse para diagnosticar elinformación funcionamiento correcto del equipo
  • 9. Núcleo Interprete de Comandos Sistema de ArchivosComponentes del SO Llamadas al Sistema Programas del Sistema Programas de Aplicación
  • 10. Es el principal responsable de facilitar a los distintos programas accesoseguro al hardware de la computadora o en forma más básica, es elencargado de gestionar recursos, a través de servicios de llamada alsistema. Como hay muchos programas y el acceso al hardware eslimitado, también se encarga de decidir qué programa podrá haceruso de un dispositivo de hardware y durante cuánto tiempo, lo que seconoce como multiplexado  En el caso de MS-DOS está formado por dos archivos, que son: el MSDOS.SYS y el IO.SYS.  El primero Realiza todas las opciones básicas de administración de los elementos hardware del sistema (comunicación entre el micro, la memoria, y los buses). El segundo es un DRIVER (manejador) elemental, que rige y organiza las Entradas y Salidas básicas del sistema ( I / O ), como la comunicación con consola (teclado y monitor), las unidades de disco e impresora.
  • 11. Voltaje al procesador programaprincipal del memoria ROM SFW Controlador de Rutina q Interrupciones inicializa el HW
  • 12. • Manejo de interrupciones.• Creación y destrucción de procesos.• Cambio de estado de los procesos.• Despacho.• 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 sistema de archivos.• Apoyo para el mecanismo de llamada y retorno de un procedimiento.• Apoyo para ciertas funciones de contabilidad del sistema.
  • 13. Es el proceso encargado de traducir los comandos que los usuarios introducen, a instrucciones que elsistema operativo entiende. Permite al usuario controlar los periféricos sin conocer las características delhardware utilizado, la gestión de las direcciones físicas, etcétera.
  • 14.  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.
  • 15. Comandos 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.
  • 16. Comandos externos ATTRIB - Sin parámetros, visualiza los atributos de los directorios y archivos. Con parámetros, cambia los atributos de directorios y archivos. Los atributos de los directorios, y los ficheros son: de lectura (r), de escritura (w), de archivo (a), oculto (h), de sistema (s). Parámetros: signos (más o menos) y letras r, w, a, y h "v". Ejemplo: Attrib +r *.* (atributo de sólo lectura, para todos los ficheros de ese directorio) 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.
  • 17. Pará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. SUBST - Crea una unidad lógica virtual a partir de un directorio. TREE - muestra los directorios en forma de ARBOL
  • 18. VENTANASENTORNOGRÁFICO
  • 19. 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.
  • 20. El sistema de archivos se basa en la administración declústers, la unidad de disco más chica que el sistemaoperativo puede administrar, permite que los archivos seregistren en una estructura arbórea.
  • 21. Es el mecanismo usado por unaaplicación para solicitar un servicio alsistema operativo.Dado que el hardware escompartido por múltiples procesos,el acceso a los recursos debe seradministrado para garantizar sucorrecto uso y evitar problemas deseguridad (si procesosmalintencionados desean accedera recursos asignados a otrosprocesos). Por estas razones, enlos sistemas duales, el acceso alambiente físico es manejadoexclusivamente por el SistemaOperativo.
  • 22. llamada al sistemase retorna al ejecución del proceso programa es original. interrumpida Instrucciones tarea finaliza de código de alto nivel.
  • 23. Compiladores Ensambladoresprogramas del Editores sistema Utilerías Bibliotecas
  • 24.  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
  • 25.  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 las bibliotecas de sistema, middleware, herramientas de desarrollo, etc.
  • 26. A) UTILERÍAS DEL SISTEMASe ejecutan bajo el control del sistema operativo yse utilizan para preparar algunos recursos usadospor el sistema. Son de uso interno.B) UTILERÍAS PARA ARCHIVOSManejan información de los archivos tales comoimprimir, clasificar, copiar, etc.C) UTILERÍAS INDEPENDIENTESRealizar funciones que se relacionan con lainiciación de dispositivos de Entrada/Salida, cargadel sistema operativo, etc.
  • 27.  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.
  • 28.  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.
  • 29.  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.
  • 30. Programa de Post (Power on Encendido Arranque self - test) Carga del Sector de Chequeo de la Sistema Arranque Configuración Operativo Carga Boot Manager yCarga del S. O.
  • 31. ARRANQUE DEL SISTEMA  ¿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.
  • 32. ARRANQUE DEL SISTEMA  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
  • 33. ARRANQUE DEL SISTEMA La próxima etapa en el proceso de arranque es la auto prueba de encendido en la cual se diagnostican problemas en la computadora. UNIDADES Microproces Tarjeta de RAM TECLADO DE DISCO ador Video (DRIVERS)
  • 34. ARRANQUE DEL SISTEMA ¿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".
  • 35. ARRANQUE DEL SISTEMA Chequea datos de la CMOS Determina cantidad de memoria en RAM Determina tipos de unidades de CD y Disco Duro Busca el directorio raíz del disco para ver la configuración de archivos, autoexec.bat
  • 36. ARRANQUE DEL SISTEMA  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 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.
  • 37. ARRANQUE DEL SISTEMA  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 un prompt o la pantalla principal de su sistema operativo, si se usa Windows será el escritorio de Windows si esta usando el DOS será el promt*
  • 38. ARRANQUE DEL SISTEMA 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 programmable 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.
  • 39. ARRANQUE DEL SISTEMA  Cuando una CPU recibe un suceso de reinicializació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.
  • 40. ARRANQUE DEL SISTEMA 1. BIOS Busca, carga y ejecuta el programa de arranque (boot loader). Echa una mirada buscando el boot loader en floppy, cd-rom, o disco duro, el BIOS carga y ejecuta el boot loader que se encuentra en el 2. MBR (Master Boot Record) Está localizado en el primer sector de un disco arrancable. Casi siempre /dev/hda, o /dev/sda El tamaño en bytes del MBR ronda los 512 bytes o menos. 1) Información primaria del boot loader en sus primeros 446 bytes. 2) Información de la tabla de partición en los siguientes 64 bytes. 3) Revisión de validación del MBR en los últimos 2 bytes. MBR carga y ejecuta el GRUB boot loader.
  • 41. ARRANQUE DEL SISTEMA3. GRUBEste carga la imagen del kernel establecida por defecto en el fichero deconfiguración de GRUB.GRUB tiene conocimiento acerca del sistema de archivos, el fichero deconfiguración de GRUB es /boot/grub/grub.conf o /boot/grub/grub.cfgEntonces, en pocas palabras, GRUB carga yejecuta el kernel y la imagen initrd.Ejemplo del fichero GRUB de CENTOS:#boot=/dev/sda default=0 timeout=5 splashimage=(hd0,0)/boot/grub/splash.xpm.gz hiddenmenutitle CentOS (2.6.18-194.el5PAE) root (hd0, 0) kernel/boot/vmlinuz-2.6.18-194.el5PAE ro root=LABEL=/ initrd /boot/initrd-2.6.18-194.el5PAE.imgEl Kernel monta el sistema de archivos raiz como lo especifica "root=" en elfichero de configuración de GRUB.Ejecuta el programa /sbin/init.initrd significa Initial RAM Disk, initrd es utilizado por el kernel como un sistema dearchivos raíz temporal hasta que el kernel es cargado y el sistema de archivosreal es montado. Además contiene controladores necesarios compiladosdentro de sí, lo que ayuda a accesar las particiones de los discos y cualquier
  • 42. ARRANQUE DEL SISTEMA Init da una mirada al fichero /etc/inittab para decidir el runlevel a ejecutar. Reboot Init identifica el initlevel por defecto desde /etc/inittab y utiliza esto para cargar todos los programas apropiados. Con el comando grep initdefault /etc/inittab podemos ver cuál es el runlevel por defecto de nuestro sistema. Cuando el sistema está arrancando, podemos ver los servicios iniciando. Por ejemplo: "Starting sendmail .... OK". Estos son los programas del runlevel, ejecutados desde el directorio correspondiente como fue definido en el runlevel. Dependiendo de la configuración de init por defecto, el sistema ejecutará los programas desde uno de los directorios, según sea el caso.
  • 43. ARRANQUE DEL SISTEMA
  • 44. El BIOS es un sistema básico de entrada/salida quenormalmente pasa inadvertido para el usuario final de computadoras. Se encarga de encontrar el sistema operativo y cargarlo en la memoria RAM. Posee un componente de hardware y otro de software; este último brinda una interfaz generalmente de texto que permite configurar varias opciones del hardware instalado en el PC,como por ejemplo el reloj, o desde qué dispositivos de almacenamiento iniciará el sistema operativo (Microsoft Windows, GNU/Linux, Mac OS X, etc.). El BIOS gestiona al menos el teclado de la computadora, proporcionando incluso una salida bastante básica en forma de sonidos por el altavoz incorporado en la placa base cuando hay algún error, como por ejemplo un dispositivo que falla o debería ser conectado. El BIOS reside en una memoria EPROM. Es un programa tipo firmware. El BIOS es una parte esencial del hardware que es totalmente configurable y es donde se controlan los procesos del flujo de información en el bus del ordenador, entre el sistema operativo y los demás periféricos
  • 45. BIOS CONCEPTOS INICIALIZACIÓN Muchos de estos elementos precisan de la inicialización de registros, carga de parámetros y determinadas señales para ponerlos en orden de funcionamiento.
  • 46. BIOS CONCEPTOS Tabla de vectores de interrupción La inicialización incluye cargar En los PCs estándar se pueden en la memoria RAM ciertas tablas manejar un total de 256 y programas muy básicos, interrupciones distintas, y cada imprescindibles para el manejo una requiere un programa de de muy bajo nivel del hardware, control especial. Este programa ejemplo: la carga en memoria se sitúa en memoria RAM o en la baja de los vectores de ROM-BIOS, pero en cualquier interrupción, de forma que caso, en los primeros 1024 cuando ocurra una interrupción octetos (1 KB) de la memoria se sepa donde encontrar la RAM (direcciones 000-400h) se rutina adecuada. carga una tabla de 256 punteros de 4 bytes, denominada de vectores de interrupción.
  • 47. BIOS CONCEPTOS Memoria de la BIOS Puesto que los programas Esta área de memoria es contenidos en la BIOS requieren conocida como memoria de cierta área de trabajo donde datos de la ROM-BIOS, y en ella se almacenar variables y datos, se maneja información muy asignaron para este propósito 256 diversa. Por ejemplo, las últimas Bytes en la zona de memoria pulsaciones de teclas; capacidad situada inmediatamente por de memoria encontrada; los encima de la tabla de vectores ciclos de reloj pasados desde de interrupción; en las media noche (hora del sistema); direcciones 400-4FFh (estas el número de líneas y columnas direcciones son frecuentemente que caben en la pantalla, o la señaladas como 0040:0000 - lista de los dispositivos que han 0040:00FF). sido detectados en el sistema durante la fase de inventario del hardware.
  • 48. BIOS CONCEPTOS Carga del Sistema Una vez terminadas las verificaciones previas, la BIOS En los sistemas primitivos, la inicia un recorrido en busca un secuencia de carga era dispositivo donde encontrar un fija, empezando en el disquete programa que se denomina (A:) y siguiendo en la primera secuencia de carga ("Boot unidad de disco (C:). Esta sigue sequence") y su orden puede siendo aún la secuencia normal, ser establecido mediante un pero las BIOS actuales pueden programa auxiliar ( set-up de la alterar este orden e incluso BIOS). Una vez fijada, la dispositivos alternativos como CD- secuencia de carga es ROM o LAN, como puntos de inicio almacenada en la memoria de para la carga del Sistema. datos de la BIOS , de forma que puede ser recordada y utilizada la próxima vez que se reinicia el sistema.
  • 49. BIOS CONCEPTOS Nombre del Tipo de Mensajes de la BIOS fabricante y la Microprocesador y de la tarjeta gráfica Versión su velocidad. Mensaje indicando Mensajes de otros Revisión de la como acceder a l dispositivos Disco memoria Ram y su BIOS,("Press Del to duro por ejemplo. tamaño. enter CMOS Setup“)
  • 50. BIOS CONCEPTOS Generalmente se hará mediante la pulsación de ciertas teclas al arrancar, mientras salen esos mensajes. Uno de los métodos más comunes es pulsar "Del", aunque en otras se usa el "F1", el "Esc" u otra combinación de teclas (Alt-Esc, Alt-F1...). Existen decenas de métodos, se tiene que estar atento a la pantalla o buscar en el manual de su placa o en el sitio web del fabricante de la BIOS. Por cierto, es bastante raro que un fabricante de placas base sea su propio suministrador de BIOS, en general todas provienen de apenas un puñado de fabricantes: Award, AMI, Phoenix y pocos más.
  • 51. BIOS CONCEPTOS
  • 52. BIOS CONCEPTOS Standard CMOS Setup Dentro de este apartado podremos establecer la fecha y la hora del sistema, configurar los discos duros y establecer la disquetera si se tiene. Si no esta seguro de qué disco duro tiene y dónde está conectado, es recomendable dejar todos los valores del campo TYPE en “Auto” para que sea la BIOS la que configure estos dispositivos automáticamente.
  • 53. BIOS CONCEPTOS Manejo básico de la BIOSBIOS Features Setup Quick Power On CPU Internal Cache External Cache: Self Test • Es altamente • Esta opción • Activando esta recomendable también debe opción se acelera que esta opción estar activada el POST y gana este activa (la para poder hacer unos segundos en marquemos como uso de la caché el arranque del “Enabled”) esta externa o caché sistema. opción, ya que en L2. Generalmente, no caso contrario existe ningún estaremos problema por deshabilitando la tenerla activada. caché interna del procesador.
  • 54. BIOS CONCEPTOS Manejo básico de la BIOSBIOS Features Setup Boot Sequence Swap Floppy Drive: Security Option:• Se establece el • Si activamos esta • Esta opción nos orden en el que el opción y tenemos permitirá indicarle a ordenador dos disqueteras, las la BIOS si queremos intentará cargar un letras de cada una establecer una sistema operativo de ellas se contraseña cada desde las distintas cambiarán, es vez que se unidades. En decir, B: pasará a encienda el equipo algunas ocasiones, ser A: y viceversa. (opción System), al esta opción viene entrar en la BIOS desglosada en tres (opción Setup o opciones diferentes: BIOS) o nunca First Boot Device, (opción Disabled). Second Boot Device y Third Boot Device.
  • 55. BIOS CONCEPTOS Manejo básico de la BIOS Chipset Features Setup Esta parte de la BIOS es recomendable no modificarla demasiado, puesto que afecta a partes críticas del sistema como el procesador, la RAM, los buses AGP, PCI, etc. Entre sus opciones, permiten a los puertos USB, habilitar el soporte para teclado USB, el tipo de bus AGP, etc. Estos elementos no deben modificarse, ya que normalmente vienen configurado por defecto para un funcionamiento correcto. Sin embargo, las últimas placas bases permiten ajustar la frecuencia del procesador mediante la BIOS en vez de usando los típicos jumpers. Normalmente dicha configuración se encuentra en este apartado de la BIOS, por lo que a muchos overclockers (personas que intentan hacer que su procesador vaya más rápido que lo establecido de fábrica) les interesarán las opciones que éste apartado puede ofrecer. Entre ellas destacan la posibilidad de cambiar el FSB de la placa base o el multiplicador del procesador.
  • 56. BIOS CONCEPTOS Manejo básico de la BIOS Power Management Setup En este apartado se configuran las opciones de ahorro de energía del ordenador. Power PM control by Video Off PM Timers Management APM Method En este apartado Establece el activaremos o Esta opción modo en el que el Se establece el desactivaremos la deberá estar sistema de vídeo tiempo que función de ahorro activada para ahorrará energía. tardará nuestro de energía. que Windows y La opción más sistema en apagar Además, todos los sistemas recomendable es los distintos podremos operativos DPMS, pero no componentes. habilitar distintas compatibles con todos los configuraciones la gestión de monitores y predeterminadas energía APM tarjetas gráficas para un ahorro (Advanced Power son compatibles máximo, mínimo. Management) con esta función. sean capaces de apagar o suspender el equipo.
  • 57. BIOS CONCEPTOS Manejo básico de la BIOS Power Management Setup CPU Fan Off in MODEM/LAN PM Events Suspend Wake Up Aquí se Determina si un establece los Determina si el modem o una eventos que se ventilador del tarjeta de red han de controlar procesador se puede hacer para el apagado apaga en caso que se encienda del equipo. del que el el ordenador. sistema entre en estado de ahorro de energía.
  • 58. BIOS CONCEPTOS Manejo básico de la BIOS PCI/PNP Configuration Setup En este apartado no hay prácticamente nada que modificar, puesto que los sistemas operativos actuales controlan ellos mismos las interrupciones y el sistema PnP (Plug and Play, enchufar y usar) y no basan sus rutinas en la BIOS. Integrated Peripherals Desde aquí podremos modificar varias opciones de los distintos dispositivos que integra la placaba base: tarjetas de sonido, controladoras IDE, puertos COM, etc. La opción más destacable de este apartado es la que hace mención al tipo de puerto LPT (paralelo) que se usara. Según el dispositivo que le vayamos a conectar, tendremos que utilizar las funciones ECP o EPP. Para saber cuál debemos utilizar, tendremos que leer el manual del dispositivo que vayamos a conectar.
  • 59. BIOS CONCEPTOS Manejo básico de la BIOS PC Health Status En este apartado no suele haber ninguna opción que configurar, sin embargo si podremos monitorizar la temperatura del procesador, la velocidad de los ventiladores, el voltaje de la placa base. Actualización de la BIOS La BIOS se encuentra en un chip Flash-ROM, los fabricantes pueden sacar nuevas versiones de la BIOS para incorporar nuevas funciones, corregir fallos u optimizar funciones. Hay que ir a la página del fabricante de la placa base, buscar el modelo y descargar la última versión de la BIOS disponible. Realizar este proceso sólo es recomendable en caso de que necesitemos alguna nueva funcionalidad que incorporen la nueva BIOS. Si todo funciona correctamente, no hay motivo por el que actualizar la BIOS.
  • 60. DISEÑO DE UN SISTEMA OPERATIVO DISEÑO E IMPLEMENTACIÓN DEL SISTEMA OPERATIVO Objetivos del diseño El primer problema al diseñar un sistema es el de definir los objetivos y especificaciones. En el nivel más alto, el diseño del sistema se verá afectado por la elección del hardware y el tipo de sistema: de procesamiento por lotes, de tiempo compartido, monousuario, multiusuario, distribuido, en tiempo real o de propósito general. Más allá de este nivel superior de diseño, puede ser complicado especificar los requisitos. Sin embargo, éstos se pueden dividir en dos grupos básicos: objetivos del usuario y objetivos del sistema
  • 61. DISEÑO DE UN SISTEMA OPERATIVO MECANISMOS Y POLÍTICAS Los mecanismos determinan cómo hacer algo; las políticas determinan qué hacer. La separación de políticas y mecanismos es importante por cuestiones de flexibilidad. Los sistemas operativos basados en microkernel, llevan al extremo la separación de mecanismos y políticas, implementando un conjunto básico de bloques componentes primitivos. Estos bloques son prácticamente independientes de las políticas concretas, permitiendo que se añadan políticas y mecanismos más avanzados a través de módulos del keniel creados por el usuario o a través de los propios programas de usuario. Las decisiones sobre políticas son importantes para la asignación de recursos. Cuando es necesario decidir si un recurso se asigna o no, se debe tomar una decisión política. Cuando la pregunta es cómo en lugar de qué, es un mecanismo lo que hay que determinar.
  • 62. DISEÑO DE UN SISTEMA OPERATIVO IMPLEMENTACIÓNTradicionalmente, los sis-temas operativos tenían que escribirse en lenguajeensamblador. Sin embargo, ahora se escriben en lenguajes de alto nivelcomo C o C++. Los sistemas opera-tivos Linux y Windows XP están escritos en su mayor parte en C, aunque hay algunas pequeñas secciones de código ensamblador para controladores de dispositivos y para guardar y restaurar el estado de registros.Las ventajas de usar un lenguaje de alto nivel:1. El código puede escribirse más rápido, es más compacto y más fácil de entender y depurar.2. La tecnología de compiladores permitirá mejorar el código generado para el sistema operativo completo, mediante una simple recompilación.3. Es más fácil de portar (trasladar a algún otro hard-ware) si está escrito en un lenguaje de alto nivel
  • 63. DISEÑO DE UN SISTEMA OPERATIVO IMPLEMENTACIÓN Las posibles desventajas de implementar un sistema operativo en un lenguaje de alto nivel se reducen a los requisitos de velocidad y de espacio de almacenamiento. Aunque los sistemas operativos tienen un gran tamaño, sólo una pequeña parte del código resulta crítica para conseguir un alto rendimiento; el gestor de memoria y el planificador de la CPU son probablemente las rutinas más críticas. Después de escribir el sistema y de que éste esté funcionando correctamente, pueden identificarse las rutinas que constituyan un cuello de botella y reemplazarse por equivalentes en lenguaje ensamblador. Para identificar los cuellos de botella, debemos poder monitorizar el rendimiento del sistema. Debe añadirse código para calcular y visualizar medidas del comportamiento del sistema. Hay diversas plataformas en las que el sistema operativo realiza esta tarea, generando trazas que proporcionan información sobre el comportamiento del sistema.
  • 64. DISEÑO DE UN SISTEMA OPERATIVO PRUEBAS DE RENDIMIENTO Pruebas de carga Este es el tipo más sencillo de pruebas de rendimiento. Una prueba de carga se realiza generalmente para observar el comportamiento de una aplicación bajo una cantidad de peticiones esperada. Esta carga puede ser el número esperado de usuarios concurrentes utilizando la aplicación y que realizan un número específico de transacciones durante el tiempo que dura la carga. Esta prueba puede mostrar los tiempos de respuesta de todas las transacciones importantes de la aplicación. Si la base de datos, el servidor de aplicaciones, etc también se monitorizan, entonces esta prueba puede mostrar el cuello de botella en la aplicación.
  • 65. DISEÑO DE UN SISTEMA OPERATIVO PRUEBAS DE RENDIMIENTO Prueba de estrés Esta prueba se utiliza normalmente para romper la aplicación. Se va doblando el número de usuarios que se agregan a la aplicación y se ejecuta una prueba de carga hasta que se rompe. Este tipo de prueba se realiza para determinar la solidez de la aplicación en los momentos de carga extrema y ayuda a los administradores para determinar si la aplicación rendirá lo suficiente en caso de que la carga real supere a la carga esperada. Prueba de estabilidad (soak testing) Esta prueba normalmente se hace para determinar si la aplicación puede aguantar una carga esperada continuada. Generalmente esta prueba se realiza para determinar si hay alguna fuga de memoria en la aplicación. Pruebas de picos (spike testing) La prueba de picos, como el nombre sugiere, trata de observar el comportamiento del sistema variando el número de usuarios, tanto cuando bajan, como cuando tiene cambios drásticos en su carga. Esta prueba se recomienda que sea realizada con un software automatizado que permita realizar cambios en el número de usuarios mientras que los administradores llevan un registro de los valores a ser monitoreados.
  • 66. DISEÑO DE UN SISTEMA OPERATIVO ESTRUCTURA DEL SISTEMA OPERATIVO Estructura simple Muchos sistemas comerciales no tienen una estructura bien definida. Frecuentemente, tales sistemas operativos comienzan siendo sistemas pequeños, simples y limitados y luego crecen más allá de su ámbito original; MS-DOS es un ejemplo de un sistema así. Originalmente, fue diseñado e implementado por unas pocas personas que no tenían ni idea de que iba a terminar siendo tan popular. Fue escrito para proporcionar la máxima funcionalidad en el menor espacio posible, por lo que no fue dividido en módulos de forma cuidadosa.
  • 67. DISEÑO DE UN SISTEMA OPERATIVO ESTRUCTURA DEL SISTEMA OPERATIVO Estructura en niveles Con el soporte hardware apropiado, los sistemas operativos puede dividirse en partes más peque-ñas y más adecuadas que lo que permitían los sistemas originales MS-DOS o UNIX. El sistema ope-rativo puede entonces mantener un control mucho mayor sobre la computadora y sobre las aplicaciones que hacen uso de dicha computadora. Los implementadores tienen más libertad para cambiar el funcionamiento interno del sistema y crear sistemas operativos modulares. Con el método de diseño arriba-abajo, se determinan las características y la funcionalidad globales y se separan en componentes.
  • 68. DISEÑO DE UN SISTEMA OPERATIVO ESTRUCTURA DEL SISTEMA OPERATIVO (los usuarios) shells y comandos compiladores e intérpretes bibliotecas del sistema interfaz de llamadas al sistema con el kernel señales, gestión de sistema de archivos, planificación de CPU, terminales, sistema de intercambio, sistema de sustitución de páginas E/S de caracteres, E/S de bloqueo, paginación bajo demanda controladores controladores de memoria virtual de terminal disco y cinta interfaz del kernel con el hardware controladores controladores de controladores de terminales, dispositivos, de memoria, terminales discos y cintas memoria física Estructura del sistema UNIX.
  • 69. DISEÑO DE UN SISTEMA OPERATIVO ESTRUCTURA DEL SISTEMA OPERATIVO Un sistema puede hacerse modular de muchas formas Estructura en niveles El sistema operativo se divide en una serie de capas (niveles). El nivel inferior (nivel 0) es el hardware; el nivel superior (nivel N) es la interfaz de usuario. Un nivel de un sistema operativo es una imple- mentación de un objeto abstracto formado por una serie de datos y por las operaciones que per-miten manipular dichos datos.
  • 70. DISEÑO DE UN SISTEMA OPERATIVO MICROKERNEL Este método estructura el sistema operativo eliminando todos los componentes no esenciales del kernel e implementándolos como programas del sistema y de nivel de usuario; el resultado es un kernel más pequeño, normalmente los microkernels proporcionan una gestión de la memoria y de los procesos mínima, además de un mecanismo de comunicaciones. La función principal del microkernel es proporcionar un mecanismo de comunicaciones entre el programa cliente y los distintos servicios que se ejecutan también en el espacio de usuario, estos nunca interactúan directamente, sino que se comunican de forma indirecta intercambiando mensajes con el microkernel.
  • 71. DISEÑO DE UN SISTEMA OPERATIVO MICROKERNELEl sistema operativo resultante es más fácil de portar de un diseño hardware aotro. El microkernel también proporciona más seguridad y fiabilidad, dadoque la mayor parte de los servicios se ejecutan como procesos de usuario, enlugar de como procesos del kernel. Si un servicio falla, el resto del sistemaoperativo no se ve afectado. Módulos Quizá la mejor metodología actual para diseñar sistemas operativos es la que usa las técnicas de programación orientada a objetos para crear un kernel modular. En este caso, el kernel dispone de un conjunto de componentes fundamentales y enlaza dinámicamente los servicios adicionales, bien durante el arranque o en tiempo de ejecución. Tal estrategia utiliza módulos que se cargan dinámicamente y resulta habitual en las implementaciones modernas de UNIX, como Solaris, Linux y Mac OS X. Por ejemplo, la estructura del sistema operativo Solaris compuesto de:1. Clases de planificación2. Sistemas de archivos3. Llamadas al sistema cargables4. Formatos ejecutables5. Módulos STREAMS6. Módulos misceláneos
  • 72. DISEÑO DE UN SISTEMA OPERATIVO MICROKERNEL – NÚCLEO SOLARIS Clases de Planificación Controladores de bus y dispositivos. Sistemas de Archivos Núcleo central Módulos de Solaris Llamadas al sistema Miceláneos cargables Módulos STREAMS Formatos ejecutables
  • 73. DISEÑO DE UN SISTEMA OPERATIVO MICROKERNEL El patrón Microkernel define cinco tipos de componentes: •Servidores internos •Servidores externos •Clientes •Adaptadores •Microkernel Servidores internos También conocidos como subsistemas, extienden la funcionalidad proporcionada por el microkernel. Representa un componente separado que ofrece funcionalidad adicional. Por ejemplo, controladores de dispositivos que soporten tarjetas gráficas específicas son buenos candidatos para servidores internos. Servidor Externo Los servidores externos exponen su funcionalidad exportando interfaces en la misma manera que el kernel lo hace. Cada uno de estos servidores externos corre en un proceso separado. La implementación de los servicios confía en los mecanismos del microkernel luego acceden a sus interfaces de programación.
  • 74. DISEÑO DE UN SISTEMA OPERATIVO MICROKERNEL Adaptadores La introducción de interfaces entre clientes y sus servidores externos protege a los clientes de dependencias directas. Los adaptadores, también conocidos como emuladores, representan estas interfaces y permiten a los clientes acceder a los servicios de su servidor externo de forma portable. Son parte del espacio de direcciones del cliente. Cliente Un cliente es una aplicación que está asociada con exactamente un servidor externo, solamente accede a la interfaz de programación proporcionada por este. Cada comunicación con un servidor externo debe ser codificada en el código cliente lo que trae varias desventajas: –El sistema no soporta modificabilidad muy bien. –Si los servidores externos emulan plataformas de aplicación existentes sus aplicaciones no correrán sin modificación.
  • 75. DISEÑO DE UN SISTEMA OPERATIVO MICROKERNEL - FUNCIONALIDAD CLASE COLABORADORES CLASE COLABORADORES Servicios Internos Microkernel Servicios Externos Microkernel RESPONSABLE RESPONSABLE • Implementa servicios • Provee interfaces de adicionales. aplicación para clientes. • Encapsula algunas aplicaciones del sistema. CLASE COLABORADORES Adaptador Microkernel Servicios Externos CLASE COLABORADORES Cliente Adaptador RESPONSABLE • Depende de una comunicación que facilite RESPONSABLE la interacción con el • Representa una cliente. aplicación. • Invoca los métodos de servidores externos en nombre de los clientes
  • 76. DISEÑO DE UN SISTEMA OPERATIVO MICROKERNEL - FUNCIONALIDAD EJERCICIO: El decano de la FIE requiere de un documento donde se especifique la lista de los estudiantes de la Escuela de Ingeniería en Control y Redes Industriales, que se encuentren aptos para presentar su anteproyecto de tesis, se necesita declarar las clases que intervienen en este proceso, utilizando el siguiente esquema: Vicedecano Estudiantes Secretarias DECANO Directores de Conserjes Escuela
  • 77. DISEÑO DE UN SISTEMA OPERATIVO NÚCLEO MONOLÍTICO Estos sistemas tienen un núcleo grande y complejo, que engloba todos los servicios del sistema. Está programado de forma no modular, y tiene un rendimiento mayor que un micronúcleo. Sin embargo, cualquier cambio a realizar en cualquier servicio requiere la recompilación del núcleo y el reinicio del sistema para aplicar los nuevos cambios. Hay diversas ramificaciones de este diseño, que se han ido amoldando a nuevas necesidades. Podemos citar el sistema de módulos ejecutables en tiempo de ejecución, que le brinda al modelo de núcleo monolítico algunas de las ventajas de un micronúcleo. Dichos módulos pueden ser compilados, modificados, cargados y descargados en tiempo de ejecución, de manera similar a los servicios de un micronúcleo, pero con la diferencia de que se ejecutan en el espacio de memoria del núcleo mismo (anillo 0).
  • 78. DISEÑO DE UN SISTEMA OPERATIVO NÚCLEO MONOLÍTICO - FUNCIONALIDAD Un sistema operativo con núcleo monolítico concentra todas las funcionalidades posibles (planificación, sistema de archivos, redes, controladores de dispositivos, gestión de memoria, etc) dentro de un gran programa. El mismo puede tener un tamaño considerable, y deberá ser recompilado por completo al añadir una nueva funcionalidad. Todos los componentes funcionales del núcleo tienen acceso a todas sus estructuras de datos internas y a sus rutinas. Un error en una rutina puede propagarse a todo el núcleo.
  • 79. DISEÑO DE UN SISTEMA OPERATIVO NÚCLEO MONOLÍTICO - FUNCIONALIDAD MS-DOS y Windows derivados (Windows 3.1, 95, 98, ME): núcleo monolítico. Linux: núcleo monolítico*.
  • 80. DISEÑO DE UN SISTEMA OPERATIVO NÚCLEO MONOLÍTICO - FUNCIONALIDAD EJERCICIO: En una institución bancaria, se requiere realizar varias transacciones por parte de los usuarios depósitos, retiros, pagos etc., ¿Cómo se definiría un sistema monolítico utilizando esta estructura? BANCO S.O. Clientes Cajeros/as Transacción NÚCLEO DEL SISTEMA Sistema Respuesta
  • 81. DISEÑO DE UN SISTEMA OPERATIVO NÚCLEO HÍBRIDO - FUNCIONALIDAD Los núcleos híbridos fundamentalmente son micronúcleos que tienen algo de código «no esencial», en espacio de núcleo para que éste se ejecute más rápido de lo que lo haría si estuviera en espacio de usuario. El núcleo híbrido implica que el núcleo en cuestión usa conceptos de arquitectura o mecanismos tanto del diseño monolítico como del micronúcleo, específicamente el paso de mensajes y la migración de código no esencial hacia el espacio de usuario, pero manteniendo cierto código no esencial en el propio núcleo por razones de rendimiento. Windows a partir de NT (NT, 2000, XP, Vista y 7): núcleo híbrido.
  • 82. DISEÑO DE UN SISTEMA OPERATIVO NÚCLEO HÍBRIDO - EJEMPLO En un supermercado se tiene varios mostradores con productos de primera necesidad, existen otros productos que se encuentran en vitrinas y solo se pueden acceder a ellos a través de vendedores, ¿Cómo se estructura un sistema híbrido usando esta estructura? Cliente Mostradores Modo Productos de Usuario primera necesidad Vendedores Núcleo Productos en vitrinas
  • 83. DISEÑO DE UN SISTEMA OPERATIVO Tipos de Núcleos