PORTAFOLIO SISTEMAS OPERATIVOS 1

Anuncio
PORTAFOLIO DE EVIDENCIAS SISTEMAS OPERATIVOS 1
ALUMNO: CARLOS MORALES LÓPEZ MATERIA: REDES 1
MAESTRA: M.C. I.S.C MARÍA GUADALUPE ENRÍQUEZ A.
CICLO: 20 DE JULIO AL 20 DE AGOSTO DE 2009 (292-3)
MODULO # 3
CARRERA: LICENCIATURA EN INGENIERIA EN SISTEMAS
COMPUTACIONALES
CICLO 293
PLANTEL 33 TORREON
PLAN DE ESTUDIOS LISC –FED-07
HORARO LUNES A JUEVES 8:00 AM A 11:00 AM
AULA 17
MATRICULA: 33091033
GRUPO TORLISC2M
Índice
Introducción
Un Sistema Operativo (SO) es una colección organizada de rutinas o extensiones de
software del hardware. Consiste en rutinas de control que hacen funcionar una
computadora y proporcionan un entorno para la ejecución de los programas. Existen
otros programas que se apoyan en el SO para poder acceder a los recursos que
necesitan. Esto se lleva a cabo a través de llamadas sistema operativo. También el SO
debe brindar una forma de que el usuario se pueda comunicar con él a través de una
interfaz que le brinde una vía de comunicación con el hardware del sistema informático.
El objetivo principal del SO es lograr que el sistema informático es el lograr que el
hardware de la computadora se emplee de modo eficiente, y el objetivo secundario se
use de manera cómoda.
El SO debe asegurar el correcto funcionamiento del sistema informático. Para lograr
esto el hardware debe brindar algún mecanismo apropiado que impida que los usuarios
intervengan en el funcionamiento del sistema y así mismo el SO debe poder utilizar este
recurso de hardware de modo que esto se cumpla.
El SO debe ofrecer servicios a los programas y sus usuarios para facilitar la tarea de
programación.
Misión
“formar profesionales de éxito que cuenten con las actitudes, habilidades y
conocimientos que demanda el sector productivo de la región.”
Visión
Brindar servicios de educación superior de calidad, en las áreas administrativas y
sociales
Ofrecer programas de licenciatura, profesional asociado, diplomados y cursos a la
comunidad del noroeste de México
Incorporar en tres meses a sus egresados al mercado de trabajo
Modelo educativo profesionalizarte
Flexibilidad de su oferta académica impartida en ciclos continuos y por horarios y
cuotas accesibles
Contar con profesores de amplia experiencia profesional y educativa
Filosofía institucional
Lealtad
Los integrantes de la comunidad universitaria consideramos la fidelidad como un valor
excelso que enaltecemos en nuestro quehacer diario.
Justicia
Los integrantes de la comunidad universitaria actuamos con la constante y perpetua
voluntad de dar a cada cual lo que le corresponde conforme a sus méritos o actos.
Honestidad
Los integrantes de la comunidad universitaria actuamos con sinceridad y honradez en
nuestras tareas y en congruencia entre los pensamientos, palabras y acciones.
Responsabilidad
Los integrantes de la comunidad universitaria llevamos a cabo nuestras actividades con
integridad, con sentido del propósito y apegados a los objetivos institucionales.
Esfuerzo
Los integrantes de la comunidad universitaria usamos nuestra máxima energía para
cumplir con los objetivos trazados.
Creatividad
Los integrantes de la comunidad universitaria resolvemos los problemas con
imaginación, conocimientos y con un espíritu de mejora continua.
PERFIL DESCRIPTIVO DE
CLASE
MATERIA:
Sistemas Operativos I
CICLO:
MAESTRO:
M.C. I.S.C María Guadalupe Enríquez A.
HORARIO:
20 de Julio al 20 de Agosto del 2009
8:00 a 10:00 a.m.
Mail: [email protected]
OBJETIVO DEL CURSO:
AL TÉRMINO DEL PROGRAMA
DE ASIGNATURA EL ALUMNO:
El alumno será capaz de identificar los elementos de programación que conforman al
sistema operativo.
BIBLIOGRAFÍA:
Sistemas Operativos. Silberchatz, Abraham; Galvin Baer , Peter. Pearson Educacion
Sistemas Operativos. Wiliam, Stallings. Pearson Educacion
Conceptos de Sistemas Operativos. Jimenez Torres Jose. Editorial Trillas
CALIFICACIÓN ORDINARIA (PONDERACIÓN)
CRITERIOS PARA
EVALUACIÓN
LA
Página Web
Prácticas Laboratorio
Tareas
20% Examen Escrito
15% Portafolio
1 0 % Exposición
TOTAL
30%
10%
15%
100%
REGLAS
1.
El alumno es responsable de enterarse de su número de faltas y retardos.
2.
El alumno que se sorprenda copiando en exámenes, tareas o trabajos, se le sancionará
conforme al criterio del docen te sin afectarle el 100% de su calificación final.
3.
Es responsabilidad del estudiante hablar inmediatamente con el maestro cuando tenga
problemas con el material de clase, sus calificaciones, etc. De esta manera evitaremos
problemas en el fin del ciclo.
4.
Es requisito para la acreditación de la materia la entrega del portafolio de evidencias
del alumno.
5.
Sólo se justifican inasistencias por un evento organizado por la Universidad.
6.
Prohibido traer encendidos teléfonos celulares dentro del aula, ni prendido en mo do
silencioso.
7.
No se permite la salida del aula mientras no ha terminado la clase.
8.
La clase es de 2 horas con receso de 10 minutos en cada hora o de una hora con cuarenta
minutos si no hay receso.
9.
No se permiten alimentos ni bebidas dentro del aula.
C ALENDARIZACIÓN
S ESIÓN
1.
F ECHA
Lun 20
Marzo
Mar 21
Julio
Mi 22
Julio
Tema
Bienvenida. Encuadre del curso
Jueves 23
Julio
Lun 27
Julio
Sistemas paralelos Sistemas distribuidos.
Mar 28
Julio
Mi 29
Julio
Sincronización de procesos. Bloqueos mutuos)
8.
Jueves 30
Julio
Interfaz con el sistema de archivos, Implementación del
sistema de archivos)
9.
Lun 3
Agosto
Sistemas E/S (Dispositivos y controladores. Acceso directo a
memoria (DMA) (Tercera exposición)
10.
Mar 4
Agosto
Mie 5
Agosto
Jueves 6
Agosto
Lun 10
Agosto
Estructura del almacenamiento secundario, Estructura del
almacenamiento terciario)
Sistemas distribuidos (Estructura de Redes, Estructura de
sistemas distribuidos. (Cuarta Exposición)
Sistemas de archivos distribuidos, coordinación distribuida) primer
parcial
Casos de estudio ( Sistema Unix, Sistema Linux, (Quinta
Exposición)
Mar 11
Agosto
Mie 12
Agosto
Jue 13
Agosto
Lunes 17
Agosto
Mar 18
Agosto
Mier 19
Agosto
Jueves 20
Agosto
Windows ) MacOs X
2.
3.
4.
5.
6.
7.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
¿Qué es un Sistema Operativo? Sistemas por lotes sencillos
Sistemas por lotes multiprogramados.
Sistemas de tiempo compartido
Gestión de procesos (Procesos. Planificación del CPU
(Primera Exposición)
Gestión de almacenamiento (Gestión de memoria. Memoria
virtual. (Segunda Exposición)
Presentación Pagina web equipo 1
Presentación Pagina web equipo 2
Presentación Pagina web equipo 3
Presentación Pagina web equipo 4
Presentación Pagina web equipo 5
Examen Final.
El alumno será capaz de identificar los elementos de programación que conforman un
sistema operativo
“cada uno tenemos una identidad personal propia, somos únicos, irrepetibles. Hemos
sido creado artesanalmente, no en serie y no tenemos porque compararnos con nadie”
Un sistema operativo (OS. por sus siglas en ingles) es un programa de software, pero es
distinto de los programas de procesamiento de texto, hojas de calculo y todos los demás
programas de software que hay en su computadora. Como recordara del capitulo 1, el
sistema operativo es un ejemplo de software de sistema: el software que controla el
hardware del sistema e interactúa con el usuario y el software de aplicaciones. En pocas
palabras, el sistema operativo es el programa de control maestro de la computadora. El
OS le proporciona las herramientas (comandos) que le permite interactuar con PC.
Cuando usted emite un comando, el OS lo traduce en código que la maquina puede
utilizar. El OS asegura que los resultados de sus acciones se desplieguen en la pantalla,
se impriman y otras cosas mas. El sistema operativo también actúa como el mecanismo
de control principal del hardware de la computadora.
Despliega los elementos de la pantalla con los cuales usted interactúa: la internas del
usuario
Carga los programas (por ejemplos, programas de procedimientos de textos y de hojas
de cálculo) en la memoria de la computadora de manera que pueda utilizarlas.
Coordina la forma en que los programas trabajan con el hardware de la computadora y
otros tipos de software
Controla la manera en que se almacenan y recupera la información de los discos
CLASIFICACIÓN DE SOFTWARE
Software aplicación: de uso cotidiano que ayuda a resolver problemas
Software sistema: controla y administra el hardware
Software programación: realiza programas
DEFINICIÓN DEL SISTEMA OPERATIVO
Software básico que controla y administra los recursos de una computadora según
Andrew taneabaun es un administrador de procesos, memoria, ficheros, y dispositivos
de entrada y salida.
FUNCIONES DEL SISTEMA OPERATIVO
Interpreta los comandos que permita al usuario comunicarse al ordenador, coordina y
manipula el hardware de la computadora como la memoria, las impresoras, las unidades
de disco, el teclado y el Mouse.
Organiza los archivos en diversos dispositivos de almacenamiento como discos duros,
CD, memorias USB etc.
Gestiona los errores de hardware y la perdida de datos
Sirve de base para la creación de software logrando que equipos de diferentes marcas
funcionen de manera análoga salvando diferencias existentes
Configura el entorno para el uso de software y los periféricos, dependiendo de la
maquina que se emplea debe establecer en forma lógica la disposición y características
del equipo
HISTORIA DE SISTEMAS OPERATIVO
Años 50s
A finales de los años 50s las computadoras masivas eran controladas por tubos al vacío
inestables toda la programación se hacia directamente en lenguaje maquina porque no
existían aun los SO se trabajaba con tarjetas perforadas.
Años 60s
IBM introdujo la computadora Systems-360 pero era un sistema operativo complejo
luego AT&T trato de desarrollar multies, pero fallo, después se creo Unix que era el
sistema uniusuario eso marco el nacimiento de Unix 1969
Años 80s
Aparecen los circuitos LSI (large scale integration) dando una nueva generación de
computadoras (PC) aparece el sistema operativo dos (disk operation system)
Años 90s
Este periodo aumenta el uso de conexiones de red y tiene nacimiento el protocolo http
con la llegada de la WWW (World, Wide, Web) se trabaja con los sistemas operativos
como Unix, Windows NT, Lantoxtic,
Periodo actual siglo XXI
Las computadoras se caracterizan por una mayor movilidad y reducción en tamaño por
uso del Wi-fi y mayor resolución de pantalla los sistemas operativos han evolucionados
han evolucionado y se encuentra una mayor cantidad de sistemas operativos de código
abierto Microsoft ha manejado Windows XP, 2000, VISTA y 2007
CLASIFICACIÓN DE LOS SISTEMAS OPERATIVOS
Sistema de interfaz de línea de comando
Es el sistema operativo en el que el usuario escribe los comandos utilizando un lenguaje
de comando especial (GUI) graphical user interfaz. Estos sistemas se consideran más
difíciles de entender pero por lo general son más programables.
Sistema interfaz grafica del usuario (GUI)
Son los sistemas operativos con representación visual y ofrecen un entorno que se
encarga de la comunicación con el ordenador
Sistemas mono tareas
Son aquellos que solo permiten una tarea a la vez por usuarios
Sistemas multitareas
Son los sistemas que permiten mas de una tarea a la vez por lo general son los sistemas
de interfases graficas, esto sistemas mejoran la productividad.
Sistema multiproceso
Se refiere al número de procesador en el sistema que es más de 1 y es capaz de usarlas
todas para distribuir su área de trabajo
Sistema de secuencias por lote
La secuencia por lote es la ejecución de una lista de comandos del sistema operativos
una tras otra sin la intervención del usuario.
Los sistemas operativos por lote también se conocen por Bath
RISC+1
CISC
Sistema de tiempo real
Es aquel sistema que procesa las instrucciones recibidas al instante y una vez
procesadas muestra el resultado. Su característica principal es dar muestras graficas
Sistema de tiempo compartido
Consiste en el uso de un sistema por mas de una persona al mismo tiempo por lo general
son computadoras grandes y en organizaciones de servicio
PROCESO
Las tareas que se están ejecutando en una computadora en los cuales intervienen los
valores corrientes del contador de programa registro y variables
SISTEMAS DISTRIBUIDOS
Son los sistemas que están diseñados para que muchos usuarios en forma conjunta.
SISTEMAS PARALELOS
Están diseñados para lograr una mayor rapidez en un único problema
Ejemplos de sistemas distribuidos
Internet
Puntos de venta
Ventajas del sistema distributivo contra sistema independiente y centralizado
1 el intercambio de datos e información ejemplo reservaciones de líneas aéreas
2 compartir recursos, programas, y periféricos ejemplo al compartir impresora, scanner,
la memoria
3 mejor comunicación entre los usuarios intranet
Desventajas de sistemas distribuidos
1 La administración del sistema se centra en la vulnerabilidad de una persona o un
departamento
2 Software con alto precio
PARTES DE UN PROCESO
-
código de programa
área de datos
program counter
registros
prioridad alta o baja
TAREAS DE UN SO
Creación
Destrucción
Suspensión
Retomarlo
Sincronización
Concurrencia
System calls (llamadas de sistema)
Conjunto de primitivos que brinda el sistema operativo y sirven para comunicarse con el
hardware de forma entendible. Para la creación de procesos existen system calls para
crear procesos destruir procesos, suspender procesos, retomar procesos, sincronizar
procesos, manejo concurrencia.
ESTADOS DE 1 PROCESO
New proceso que esta siendo creado
Running proceso de ejecución
Waiting proceso en espera
Ready proceso esperando por la CPU listo para iniciar
Terminated proceso que a terminado
PCB PROCESS CONTROL BLANK
Lista encadenada donde se almacenan los procesos la lista esta compuesta por nodos.
Cada nodo contiene la siguiente información.
Estado del proceso
Program counter
Registros del CPU
Información de schedulling del CPU
Información de uso (tiempo de uso de la CPU, hora despacho etc.)
Información de E/S (lista de dispositivo asignados, archivos abiertos etc.)
COLAS DE SCHEDULLING
Los procesos que están en estado de espera quedan en una lista llamada “lista de cola” o
“cola Ready”. Los procesos que hacen uso de E/S se guardan en una cola de E/S hay
una cola de E/S para cada dispositivo
SCHEDULLERS
Componente del SO responsable de decir quien hará uso del CPU.
ALGORITMO SCHEDULLERS
FCFS (first come first served)
Cuando un proceso llega a la cola ready su PSB es agregado al final de la lista el uso del
CPU es otorgado al primero de la lista y una vez que el proceso empieza a ejecutar no
deja de hacerlo hasta que termina el tiempo que de espera suele ser bastante alto.
SIF (shortes job first)
Una vez que en un proceso ejecuta no deja de hacerlo hasta que voluntariamente cambia
de estado asocia a cada proceso el tiempo de CPU que abra de usar en su próxima vuelta
y va a decidir por el mas pequeño. Si hubiera más de uno utiliza el FCFS para
desempatar. El FST se divide en 2 tipos de algoritmos PREEPTIVO Y NO
PREEPTIVO
PREEPTIVO si mientras un proceso se esta ejecutando entra a la cola Ready un proceso
mas corto, el proceso en la cola Ready se apropia del CPU y comienza su ejecución
NO PREEPTIVO no existe la situación anterior
Dead locks si un conjunto de procesos esta en estado de espera por recursos y nunca
cambia de estados porque los recursos que ha estado esperando están siendo utilizado
por otros procesos en espera.
Round Robin
Asocia a cada proceso una prioridad. Luego selecciona el proceso con más prioridad
para desempatar. En caso de que hubiera dos o más procesos con la misma prioridad, se
usa FCFC para desempatar. Hay dos tipos de prioridad en los procesos: la prioridad
externa definida a través del sistema operativo y la prioridad interna definida por el
tiempo de uso de la CPU, el control de E/S, etc. Este algoritmo también, se puede
ejecutar de dos maneras: preemptivo y no preemptivo. El algoritmo soluciona el
problema del looping pero el problema es que los procesos con prioridad muy baja
tienen chance de no ejecutarse nunca. Para solucionar este problema de espera infinita el
envejecimiento de un proceso eleva su prioridad.
Si el proceso es menor a QUANTUM entonces es FCFS
Overhead en caso de que el proceso es mas grande que quantum
GESTIÓN DE ALMACENAMIENTO
Memoria principal RAM
Memoria virtual paginación
Memoria secundaria USB, discos, discos duros.
Priority schedullings
Asocia a cada proceso una prioridad. Luego selecciona el proceso con más prioridad
para desempatar. En caso de que hubiera dos o más procesos con la misma prioridad, se
usa FCFC para desempatar. Hay dos tipos de prioridad en los procesos: la prioridad
externa definida a través del sistema operativo y la prioridad interna definida por el
tiempo de uso de la CPU, el control de E/S, etc. Este algoritmo también, se puede
ejecutar de dos maneras: preemptivo y no preemptivo. El algoritmo soluciona el
problema del looping perro el problema es que los procesos con prioridad muy baja
tienen chance de no ejecutarse nunca. Para solucionar este problema de espera infinita el
envejecimiento de un proceso eleva su prioridad.
Quien lo asigna
prioridad externa
Prioridad interna
La forma ejecución
preemtivo
No preemtivo
SO
tiempo de uso del CPU control E/S
ADMINISTRACIÓN DE PROCESOS
Normalmente en una PC existen muchos procesos simultáneamente. El administrador se
encarga de seleccionar el proceso en turno al ejecutado en el CPU. El objetivo en
general es maximizar el uso del CPU bajo un tiempo de respuestas razonable
mantenimiento un uso justo seguro y equilibrado.
PROCESOS PRINCIPALES DE WINDOWS
Csrss.exe
gestiona las ventanas
Isaas.exe
gestiona la seguridad (seguridad servicio, aplicaciones etc.)
Explorer.exe gestiona el escritorio de Windows
Svshost.exe gestiona los procesos (es común encontrar) revisa con el administrador
de tareas los procesos mas del anteriores y revisa las siguientes situaciones.
Baile de letras
Tipografía (1, i, l)
Espacios en blanco (al principio y al final)
MEMORIA PRINCIPAL
Es un arreglo lineal de localidades de almacenamiento cada localidad tiene asignada que
le identifica y es el lugar donde el CPU lee las instrucciones o ejecuta así como algunos
datos a emplear .conocido también como la memoria RAM
MANEJO DE MEMORIA
real
Mono
usuario
real
Virtual
Multiprogramación Multiprogramación
Partición
Fijas/Variables
relocalización
Partición
Pura
combinación
Protección
segmentación
Pura
combinación
Grado multiprogramación
Es el tiempo promedio en el que el CPU esta ocupado
60% E/S
40%multiprogramación
Particiones
La forma más fácil de conseguir la multiprogramación es simplemente dividir la
memoria en n particiones (posiblemente de diferentes tamaños). Esta división puede,
por
ejemplo, realizarse manualmente cuando se pone en marcha el sistema.
Cuando llega un trabajo, puede colocarse en la cola de entrada de la partición más
pequeña en la que cabe. Puesto que en este esquema las particiones son fijas, cualquier
espacio
en una partición no utilizado por un trabajo se desperdicia. Este sistema, con particiones
fijas establecidas por la mañana por el operador sin
posibilidad de modificarse después, fue utilizado en el OS/360 de los grandes
mainframes de
IBM durante muchos años. Se le denominó MFT (Multiprogramming with a Fixed
number of
Tasks u OS/MFT). Es sencillo de entender e igualmente sencillo de implementar: los
trabajos
que llegan se encolan hasta que esté disponible una partición apropiada, momento en el
cual el
trabajo se carga en esa partición y se ejecuta hasta que termina. Actualmente, son pocos,
por no
decir ninguno, los sistemas operativos que utilizan este modelo.
memoria virtual se refiere cuando el tamaño combinado del programa, sus datos y
su pila pueden exceder la cantidad de memoria física disponible. El sistema operativo
mantiene
en la memoria principal aquellas partes del programa que se están usando en cada
momento,
manteniendo el resto de las partes del programa en el disco. Por ejemplo, un programa
de 16
MB puede ejecutarse sobre una máquina de 4 MB eligiendo cuidadosamente qué 4 MB
se
tendrán en la memoria en cada instante, e intercambiando partes del programa entre el
disco y la
memoria, según sea necesario.
los sistemas de paginación de memoria dividen los programas en pequeñas partes o
páginas. Del mismo modo, la memoria es dividida en trozos del mismo tamaño que las
páginas llamados marcos de página.
Paginación pura
La paginación pura en el manejo de memoria consiste en que el sistema operativo divide
dinámicamente los programas en unidades de tamaño fijo ( generalmente múltiplos de 1
kilobyte ) los cuales va a manipular de RAM a disco y viceversa. Al proceso de intercambiar
páginas, segmentos o programas completos entre RAM y disco se le conoce como
`intercambio' o `swapping'. En la paginación, se debe cuidar el tamño de las páginas, ya
que si éstas son muy pequeñas el control por parte del sistema operativo para saber cuáles
están en RAM y cuales en disco, sus direcciones reales, etc; crece y provoca mucha
`sobrecarga' (overhead). Por otro lado, si las páginas son muy grandes, el overhead
disminuye pero entonces puede ocurrir que se desperdicie memoria en procesos pequeños.
Debe haber un equilibrio.
Segmentaciòn. Divide la memoria en segmentos, cada uno de los cuales tiene una
longitud variable, que está definida intrínsecamente por el tamaño de ese segmento del
programa. Los elementos dentro de un segmento están identificados por su
desplazamiento con respecto al inicio del segmento: la primera instrucción del
programa, la séptima entrada de la pila, la quinta instrucción de la función Sqrt(), etc.
La Relocalización consiste en ajustar las direcciones de un programa al sitio donde fue
cargado, para que este pueda ser ejecutado. Este proceso es indispensable para poder tener
multiprogramación, puesto que un programa no siempre va a ocupar las mismas posiciones
de memoria.
Suponga que se tiene el siguiente trozo de programa en lenguaje ensamblador:
Para su ejecución el programa debe ser traducido a lenguaje de máquina. Sin embargo el
ensamblador no conoce el sitio en donde va a ser cargado el programa y por lo tanto no
puede traducir adecuadamente las referencias a la memoria. Si el programa fuese cargado
en la posición 0, por ejemplo, y suponiendo que las variables h y g están en las posiciones
50 y 54 respectivamente, con respecto al inicio del programa, el programa generado sería:
Sin embargo, si el programa fuese cargado a partir de la posición 100, el código debe
relocalizarse y sería:
Segmentación pura
La segmentación se aprovecha del hecho de que los programas se dividen en partes lógicas,
como son las partes de datos, de código y de pila (stack). Lasegmentación asigna particiones
de memoria a cada segmento de un programa y busca como objetivos el hacer fácil el
compartir segmentos ( por ejemplo librerías compartidas ) y el intercambio entre memoria
y los medios de almacenamiento secundario.
Sistemas combinados
La paginación y la segmentación puras son métodos de manejo de memoria bastante
efectivos, aunque la mayoría de los sistemas operativos modernos implantan esquemas
combinados, es decir, combinan la paginación y la segmentación. La idea de combinar estos
esquemas se debe a que de esta forma se aprovechan los conceptos de la división lógica de
los programas (segmentos) con la granularidad de las páginas. De esta forma, un proceso
estará repartido en la memoria real en pequeñas unidades (páginas) cuya liga son los
segmentos
Tareas
Tarea 1
Tarea 2
Tarea 3
Articulos
1
2
3
4
5
Exámenes
Practicas
Exposiciones
IVAN
BRIAN Y JOSUE
STHEPANY
JAVIER Y CARLOS
JUAN ROBERTO
IRVIN
Conclusión
Reflexión
Descargar