Professional Documents
Culture Documents
Anuncios
Un sistema operativo (OS) es un intermediario entre los usuarios y los equipos informticos. Proporciona a los usuarios un
entorno en el que un usuario puede ejecutar programas de forma cmoda y eficaz.
En trminos tcnicos, es un software que maneja el hardware. Un sistema operativo controla la asignacin de recursos y
servicios, tales como memoria, procesadores, dispositivos e informacin.
Definicin
Un sistema operativo es un programa que acta como interfaz entre el usuario y el hardware del ordenador y controla la
ejecucin de todo tipo de programas.
A continuacin se presentan algunas de las funciones importantes de un sistema operativo.
Gestin de memoria
De gestin de procesador
Gestin de dispositivos
Gestin de archivos
Seguridad
El control sobre el rendimiento del sistema
La contabilidad de trabajos
Ayudas de deteccin de errores
La coordinacin entre otro software y usuarios
Tipos de Sistema Operativo
Los sistemas operativos estn ah desde la primera generacin de la computadora. Los sistemas operativos siguen
evolucionando a lo largo del perodo de tiempo. Los siguientes son algunos de los tipos importantes de sistema operativo que
se utilizan con ms frecuencia.
Sistema operativo por lotes
Los usuarios del sistema operativo por lotes no interactan directamente con el ordenador. Cada usuario prepara su trabajo en
un dispositivo fuera de lnea como tarjetas perforadas y lo presenta al operador de la computadora. Para acelerar el proceso,
los trabajos con necesidades similares se procesan por lotes y se ejecutan como un grupo. Por lo tanto, los programadores
dejaron sus programas con el operador.Entonces, el operador ordena programas en lotes con requisitos similares.
Los problemas con los sistemas de lotes estn siguiendo.
La falta de interaccin entre el usuario y trabajo.
CPU es a menudo lenta, ya que las velocidades de los dispositivos de E / S mecnica es ms lenta que la CPU.
Difcil proporcionar la prioridad deseada.
Sistemas operativos de tiempo compartido
Pgina Anterior Pgina siguiente
Tiempo compartido
es una tcnica que
permite a muchas
personas, ubicados
en varios terminales,
utilizar un sistema de
ordenador en
particular al mismo
tiempo. Tiempo
compartido o
multitarea es una
extensin lgica de la
multiprogramacin. Tiempo de procesador que se comparte entre varios usuarios al mismo tiempo que se denomina como
tiempo compartido. La principal diferencia entre los sistemas de lotes multiprogramados y tiempo compartido de sistemas es
que en el caso de los sistemas de lotes multiprogramados, el objetivo es maximizar el uso del procesador, mientras que en el
objetivo de los sistemas de tiempo compartido es reducir al mnimo el tiempo de respuesta.
Mltiples trabajos son ejecutados por la CPU conmutando entre ellos, pero los interruptores ocurren con tanta frecuencia. Por
lo tanto, la lata usuario recibe una respuesta inmediata. Por ejemplo, en un procesamiento de transacciones, el procesador
ejecutar cada programa de usuario en una rfaga corta o cuntica de la computacin. Esto es, si estn presentes n usuarios,
cada usuario puede conseguir cuanto de tiempo. Cuando el usuario enva el comando, el tiempo de respuesta es en pocos
segundos como mximo.
Sistema operativo distribuido
Los sistemas distribuidos utilizan varios procesadores centrales para servir aplicacin en tiempo real de mltiples y mltiples
usuarios. Trabajos de procesamiento de datos se distribuyen entre los procesadores de acuerdo a lo que uno puede realizar
cada trabajo lo ms eficientemente posible.
Los procesadores se comunican entre s a travs de varias lneas de comunicacin (tales como buses de alta velocidad o
lneas telefnicas). Estos se conocen como sistemas dbilmente acoplados o los sistemas distribuidos. Procesadores en un
sistema distribuido pueden variar en tamao y funcin. Estos procesadores se denominan como sitios, nodos, ordenadores y
as sucesivamente.
Sistema operativo de red
Red del sistema operativo se ejecuta en un servidor y servidor y proporciona la capacidad de administrar datos, usuarios,
grupos, seguridad, aplicaciones y otras funciones de red. El propsito principal del sistema operativo de red es permitir que el
archivo compartido y acceso a la impresora entre varios ordenadores en una red, por lo general una red de rea local (LAN),
una red privada o de otras redes.Ejemplos de sistemas operativos de red son Microsoft Windows Server 2003, Microsoft
Windows Server 2008, UNIX, Linux, Mac OS X, Novell NetWare, y BSD.
Sistema operativo en tiempo real
Sistema de tiempo real es define como un sistema de procesamiento de datos en el que el intervalo de tiempo requerido para
procesar y responder a las entradas es tan pequea que controla el medio ambiente. Procesamiento en tiempo real est
siempre en lnea, mientras que en la lnea sistema no tiene que ser en tiempo real. El tiempo que tarda el sistema para
responder a una entrada y visualizacin de la informacin requerida con la actualizacin que se denomina como el tiempo de
respuesta. As, en este mtodo el tiempo de respuesta es muy inferior en comparacin con el procesamiento en lnea.
Sistemas de tiempo real se utilizan cuando hay requisitos de tiempo rgidos sobre el funcionamiento de un procesador o el flujo
de datos y sistemas de tiempo real se puede utilizar como un dispositivo de control en una aplicacin dedicada. Sistema
operativo de tiempo real tiene bien definido, las limitaciones de tiempo de otro modo fijadas sistema se fail.For ejemplo
experimentos cientficos, sistemas de imgenes mdicas, sistemas de control industrial, sistemas de armas, robots y
controladores casa-applicance, sistema de control de trfico areo, etc
Sistema operativo - Servicios
Un sistema operativo ofrece servicios tanto a los usuarios y para los programas.
Proporciona programas, un entorno de ejecucin.
Proporciona a los usuarios, los servicios para ejecutar los programas de una manera conveniente.
Los siguientes son algunos de los servicios comunes prestados por los sistemas operativos.
La ejecucin del programa
Operaciones de E / S
La manipulacin de archivos de sistema
Comunicacin
Deteccin de errores
Asignacin de Recursos
Proteccin
Sistema operativo - Propiedades
A continuacin se presentan algunas de las tareas muy importantes que maneja Sistema Operativo
El procesamiento por lotes
El procesamiento por lotes es una tcnica en la que el sistema operativo recoge uno los programas y datos juntos en un lote
antes de iniciar su procesamiento. El sistema operativo realiza las siguientes actividades relacionadas con el procesamiento
por lotes.
OS define un trabajo que ha predefinido secuencia de comandos, programas y datos como una sola unidad.
OS mantiene un nmero a puestos de trabajo en la memoria y las ejecuta sin ninguna informacin manual.
Los trabajos se procesan en el orden de presentacin es decir, primero llegado primero servido moda.
Cuando el trabajo se completa su ejecucin, su memoria se libera y la salida para el trabajo se copia en una bobina de
salida para su impresin o su posterior procesamiento.
Multitarea
La multitarea se
refiere al plazo en
que mltiples
trabajos son
ejecutados por la
CPU
simultneamente por
el cambio entre
them.Switches ocurrir
con tanta frecuencia
que los usuarios
pueden interactuar
con cada programa
mientras se est
ejecutando.
La
multiprogramacin
Cuando dos o ms programas residen en la memoria al mismo tiempo, a continuacin, compartir el procesador se refiri a la
multiprogramacin. La multiprogramacin asume un nico procesador compartido. La multiprogramacin aumenta la utilizacin
de la CPU mediante la organizacin de puestos de trabajo de manera que la CPU siempre tiene uno para ejecutar.
Tras figura muestra el diseo de memoria para un sistema de multiprogramacin.
Interactividad
La interactividad se refiere que un usuario es capaz de interactuar con el sistema informtico. El sistema operativo realiza las
siguientes actividades relacionadas con la interactividad.
OS proporciona una interfaz de usuario para interactuar con el sistema.
Dispositivos de entrada del sistema operativo para los gestores toman entradas del usuario. Por ejemplo, el teclado.
OS gestiona los dispositivos de salida para mostrar salidas para el usuario. Por ejemplo, el monitor.
Tiempo de respuesta OS debe ser corto ya que el usuario enva y espera el resultado.
Sistema
Tiempo real
En tiempo real de
sistemas representa
se dedican por lo
general, los sistemas
integrados. El
sistema operativo
realiza las siguientes
actividades
relacionadas con la
actividad del sistema
en tiempo real.
En tales sistemas,
los sistemas
operativos suelen
leer y reaccionar a
los datos del sensor.
El sistema operativo
debe garantizar la
respuesta a los
eventos dentro de
perodos fijos de
tiempo para
garantizar un
rendimiento correcto.
Entorno
distribuido
Entorno distribuido
se refiere a las CPU
independiente
mltiple o
procesadores en un
sistema
informtico. El
sistema operativo
realiza las siguientes
actividades
relacionadas con el
entorno distribuido.
OS Distribuye lgicas
de computacin entre
varios procesadores
fsicos.
Los procesadores no
comparten memoria
o un reloj.
En su lugar, cada
procesador tiene su
propia memoria local.
OS gestiona las
comunicaciones
entre los
procesadores. Se
comunican entre s a
travs de diversas lneas de comunicacin.
Spooling
En cola es un acrnimo de las operaciones perifricas simultneas en lnea. En cola se refiere a poner los datos de diversos
puestos de trabajo de E / S en un bfer. Este bfer es un rea especial en la memoria o en el disco duro que se puede
acceder a los dispositivos de E / S. El sistema operativo realiza las siguientes actividades relacionadas con el entorno
distribuido.
OS maneja dispositivo de E / S de cola de impresin de datos como los dispositivos tienen diferentes tipos de acceso a
datos.
OS mantiene el bfer de cola de impresin que ofrece una estacin de espera donde los datos pueden descansar
mientras el dispositivo ms lento se pone al da.
OS mantiene computacin paralela debido proceso de cola de impresin como una computadora puede realizar E / S en
paralelo fashin. Se hace posible que la computadora lee datos de una cinta, escribir datos en el disco y escribir a una
impresora de cinta mientras est haciendo su tarea informtica.
Sistema
operativo -
Procesos
Proceso
Un proceso es un
programa en
ejecucin. La
ejecucin de un
proceso debe
progresar de manera
secuencial. Definicin de proceso est siguiendo.
Un proceso se define como una entidad que representa la unidad bsica de trabajo para ser implementada en el
sistema.
Los componentes del proceso estn siguiendo.
SN Componente y Descripcin
1
Programa de Objetos
Cdigo a ser ejecutado.
2
Datos
Los datos que se utilizan para ejecutar el programa.
3
Recursos
Durante la ejecucin del programa, que puede requerir algunos recursos.
4
Estado
Verifica el estado del proceso de execution.A proceso se ejecuta hasta que finaliza slo cuando
todos los recursos solicitados se han asignado al proceso. Dos o ms procesos se podran
ejecutar el mismo programa, cada uno con sus propios datos y recursos.
Programa
Un programa por s mismo no es un proceso. Es una entidad esttica compuesta de declaracin del programa mientras que el
proceso es una entidad dinmica. Programa contiene las instrucciones para ser ejecutadas por el procesador.
Un programa tiene un espacio en el nico lugar en la memoria principal y contina a permanecer all. Un programa no realiza
ninguna accin por s mismo.
Estados Proceso
Como un proceso se ejecuta, cambia de estado. El estado de un proceso se define como la actividad actual del proceso.
Proceso puede tener uno de los siguientes cinco estados a la vez.
SN Estado y Descripcin
1
Nueva
Se est creando el proceso.
2
Ready
El proceso est esperando a ser asignado a un procesador. Procesos Ready estn esperando
tener el procesador asignado a ellos por el sistema operativo para que puedan funcionar.
3
Correr
Instrucciones de procesos se estn ejecutando (es decir, el proceso que se est ejecutando en
ese momento).
4
Esperando
El proceso est a la espera de que se produzca algn evento (por ejemplo, la conclusin de una
operacin de E / S).
5
Terminado
El proceso ha finalizado la ejecucin.
Sistema
operativo -
Process
Scheduling
Definicin
La planificacin del
proceso es la
actividad del
administrador de
proceso que se
ocupa de la
eliminacin del
proceso de ejecucin
de la CPU y la
seleccin de otro
proceso sobre la
base de una
estrategia particular.
Programacin de procesos es una parte esencial de un sistema operativo de multiprogramacin. Tales sistemas operativos
permiten que ms de un proceso que se carga en la memoria ejecutable a la vez y acciones Procesos cargado la CPU usando
multiplexacin en el tiempo.
Colas Programacin
Programacin de colas se refiere a las colas de procesos o dispositivos. Cuando el proceso de entrada en el sistema,
entonces este proceso se pone en una cola de trabajos. Esta cola se compone de todos los procesos en el sistema. El sistema
operativo tambin mantiene otras colas, tales como cola de un dispositivo. Cola de dispositivos es una cola para la que
mltiples procesos estn esperando para un dispositivo concreto de E / S. Cada dispositivo tiene su propia cola de dispositivo.
Esta figura muestra el diagrama de puesta en cola de programacin de procesos.
Cola est representado por la caja rectangular.
Los crculos representan los recursos que sirven a las colas.
Las flechas indican el flujo del proceso en el sistema.
Las colas son de dos
tipos
Cola de Ready
Cola de un
dispositivo
Un proceso recin
llegado se pone en la
cola de
listos. Procesos de
espera en cola de
listos para la
asignacin de la
CPU. Una vez que la
CPU se asigna a un
proceso, entonces
ese proceso se
ejecutar.Durante la
ejecucin del
proceso, puede
ocurrir cualquiera de
los siguientes
eventos.
El proceso podra
emitir una solicitud
de E / S y luego se
coloca en una cola
de E / S.
El proceso podra crear nuevo subproceso y esperar a su terminacin.
El proceso podra ser retirada por la fuerza de la CPU, como resultado de la interrupcin y volver a poner en la cola de
listos.
Modelo de proceso de los dos Estados
Dos modelo de proceso de estado se refiere a funcionamiento y para no correr estados que se describen a continuacin.
SN Estado y Descripcin
1
Correr
Cuando el nuevo proceso es creado por el sistema operativo que el proceso entra en el sistema
como en estado de ejecucin.
2
Sin funcionamiento
Los procesos que no se estn ejecutando se mantienen en la cola, esperando su turno para
ejecutar. Cada entrada en la cola es un puntero a un proceso particular. Cola se implementa
mediante el uso de lista enlazada. Uso del expedidor es el siguiente. Cuando se interrumpe un
proceso, ese proceso se transfiere en la cola de espera. Si el proceso se ha completado o
cancelado, se descarta el proceso. En cualquier caso, el despachador selecciona entonces un
proceso de la cola para ejecutar.
Schedulers
Los programadores son softwares especiales del sistema que maneja la planificacin de procesos en diversos tarea principal
ways.Their es para seleccionar los trabajos que se presentarn en el sistema y decidir qu proceso se ejecute. Los
programadores son de tres tipos
Programador de largo plazo
Programador de Corto Plazo
Programador de Mediano Plazo
Los algoritmos de planificacin - OS
Discutiremos cuatro algoritmos de planificacin ms importantes aqu, que estamos siguiendo
En primer llegado primer servido (FCFS) Programacin
Ms corta-Job-First (SJF) Programacin
Programacin de Prioridad
Robin (RR) Programacin de Ronda
Multinivel Queue Scheduling
Sistema operativo - Multi-Threading
Cul es la rosca?
Un hilo es un flujo de ejecucin a travs del cdigo de proceso, con su propio contador de programa, registros del sistema y la
pila. Un hilo es tambin conocido un proceso ligero. Temas proporcionan una forma de mejorar el rendimiento de aplicaciones
a travs de paralelismo. Hilos representan un enfoque de software para mejorar el rendimiento de sistema operativo mediante
la reduccin de la rosca de arriba es equivalente a un proceso clsico.
Cada hilo pertenece exactamente puede existir un proceso y hay hilo fuera de un proceso. Cada hilo representa un flujo
separado de control.Threads se han utilizado con xito en la implementacin de servidores de red y servidor web. Tambin
proporcionan una base adecuada para la ejecucin paralela de aplicaciones en multiprocesadores de memoria
compartida. Folowing figura muestra el funcionamiento de los procesos individuales y multiproceso.
Diferencia
entre procesos
y subprocesos
SN Proceso Tema
1 El proceso es pesado o recursos. Tema es ligero teniendo menos
recursos que un proceso.
1
Conmutacin de proceso necesita la interaccin con el
sistema operativo.
Tema de conmutacin no necesita
interactuar con el sistema operativo.
1
En mltiples entornos de procesamiento de cada
proceso se ejecuta el mismo cdigo, pero tiene sus
propios recursos de memoria y de archivo.
Todos los hilos pueden compartir un
mismo conjunto de archivos abiertos,
procesos hijos.
1
Si un proceso est bloqueado entonces ningn otro
proceso puede ejecutar hasta que el primer proceso es
desbloqueado.
Mientras que un hilo est bloqueado y
esperando, segundo hilo en la misma
tarea se puede ejecutar.
1
Mltiples procesos sin utilizar hilos utilizan ms
recursos.
Procesos roscados mltiples utilizan
menos recursos.
1
En varios procesos de cada proceso opera
independientemente de los otros.
Un hilo puede leer, escribir o cambiar
los datos de otro hilo.
Ventajas de la rosca
Pase minimizar el cambio de contexto vez.
El uso de hilos proporciona concurrencia dentro de un proceso.
Comunicacin eficiente.
Economa- Es ms econmico para crear y roscas cambio de contexto.
La utilizacin de arquitecturas multiprocesador en mayor escala y eficiencia.
Tipos de rosca
Los hilos se implementan en el seguimiento de dos maneras
Temas Nivel usuario - hilos de usuario gestionado
Kernel Nivel temas - Sistema operativo lograron hilos que actan en el kernel, un ncleo de sistema operativo.
Gestin de memoria - SO
Gestin de la memoria es la funcionalidad de un sistema operativo que maneja o administra la memoria primaria. Gestin de la
memoria hace un seguimiento de todos y cada posicin de memoria, ya sea que se asigna a algn proceso o que est
libre. Controla la cantidad de memoria que se asignar a los procesos. Decide qu proceso va a conseguir la memoria en qu
momento. Realiza un seguimiento cada vez que algo de memoria se libera o no asignado y, correspondientemente, se
actualiza el estado.
Gestin de la memoria proporciona proteccin mediante el uso de dos registros, un registro base y un registro lmite. El
registro base contiene la direccin legal ms pequea de memoria fsica y el registro lmite especifica el tamao del rango. Por
ejemplo, si el registro de la base sostiene 300000 y el registro lmite es de 1209000, entonces el programa puede acceder
legalmente todas las direcciones a travs de 300.000 411.999.
Las instrucciones y datos a direcciones de memoria se pueden realizar en las formas siguientes
Compilar tiempo - Cuando se conoce en tiempo de compilacin donde el proceso residir, compilar unin se utiliza
para generar el cdigo de tiempo absoluto.
Tiempo de carga - Cuando no se conoce en tiempo de compilacin en el proceso residir en la memoria, el compilador
genera re-localizables cdigo.
- Tiempo de ejecucin Si el proceso se puede mover durante su ejecucin de un segmento de memoria a otra, a
continuacin, la unin debe ser retrasada por hacer en tiempo de ejecucin
Dinmica Loading
En la carga dinmica, una rutina de un programa no se carga hasta que es llamado por el programa.Todas las rutinas se
mantienen en el
disco en un formato
de carga re-
localizables. El
programa principal se
carga en memoria y
se ejecuta. Mtodos
o mdulos otras
rutinas se cargan a
peticin. Carga
dinmica hace mejor
uso del espacio de la
memoria y las rutinas
no utilizados nunca
se cargan.
Vinculacin
Dinmica
La vinculacin es el
proceso de recogida
y la combinacin de
varios mdulos de
cdigo y datos en un
archivo ejecutable
que se puede cargar
en la memoria y
ejecutado. El sistema
operativo puede
enlazar bibliotecas
nivel del sistema
para un
programa. Cuando
se combina las
bibliotecas en tiempo
de carga, la
vinculacin se llama la vinculacin esttica y cuando esta vinculacin se realiza en el momento de la ejecucin, que se llama
como la vinculacin dinmica.
En la vinculacin esttica, bibliotecas vinculadas en tiempo de compilacin, por lo que el tamao del cdigo del programa se
hace ms grande, mientras que en las bibliotecas de enlace dinmico enlazadas en tiempo de ejecucin por lo que el tamao
del cdigo del programa sigue siendo pequeo.
Lgico frente espacio de direcciones fsicas
Una direccin generada por la CPU es una direccin lgica mientras que la direccin realmente disponible en la unidad de
memoria es una direccin fsica. Direccin lgica tambin se conoce una direccin virtual.
Direcciones virtuales y fsicas son las mismas en tiempo de compilacin y esquemas de unin de direccin-en tiempo de
carga. Direcciones virtuales y fsicas difieren en el esquema de unin a la direccin-en tiempo de ejecucin.
El conjunto de todas las direcciones lgicas generadas por un programa se conoce como un espacio de direcciones lgicas. El
conjunto de todas las direcciones fsicas correspondientes a estas direcciones lgicas se conoce como un espacio de
direcciones fsicas.
La asignacin de tiempo de ejecucin de lo virtual a la direccin fsica se realiza por la unidad de gestin de memoria (MMU),
que es un dispositivo de hardware. MMU utiliza el mecanismo siguiente para convertir direcciones virtuales a direcciones
fsicas.
El valor en el registro de base se aade a cada direccin generada por un proceso de usuario que se trata como
desplazamiento en el momento que se enva a la memoria. Por ejemplo, si el valor del registro de base es 10000,
entonces un intento por parte del usuario utilizar ubicacin de la direccin 100 se reasigna dinmicamente a la posicin
10100.
El programa de usuario se ocupa de las direcciones virtuales; nunca ve las direcciones fsicas reales.
Intercambio
Intercambio es un mecanismo en el que un proceso puede intercambiarse temporalmente fuera de memoria principal a un
almacn de respaldo, y luego trajo a la memoria para continuar su ejecucin.
Copia de tienda es una generalmente una unidad de disco duro o cualquier otro medio de almacenamiento secundario que en
el acceso rpido y lo suficientemente grande para acomodar copias de todas las imgenes de memoria para todos los
usuarios. Debe ser capaz de proporcionar acceso directo a estas imgenes de la memoria.
Mayor tiempo parte del intercambio es el tiempo de transferencia. Tiempo total de transferencia es directamente proporcional a
la cantidad de memoria intercambiada. Vamos a suponer que el proceso de usuario es de un tamao de 100 KB y el almacn
de respaldo es un disco duro estndar con velocidad de transferencia de 1 MB por segundo. La transferencia real del proceso
de 100K a o desde la memoria tendr
100KB / 1000KB por segundo
= 1/10 segundos
= 100 milisegundos
Asignacin de
memoria
Memoria de trabajo
por lo general tiene
dos particiones
Memoria baja -
Sistema operativo
reside en esta
memoria.
Alta memoria - Los
procesos de usuario
mantenidas en
memoria alta.
El sistema operativo
utiliza el siguiente
mecanismo de
asignacin de
memoria.
SN
Asignacin
de
memoria
Descripcin
1
La
asignacin
de una
sola
particin
En este tipo de asignacin, el esquema de reubicacin-registro se utiliza para
proteger los procesos de usuario desde uno al otro, y de cambiar el cdigo del
sistema operativo y los datos. Registro de relocalizacin contiene el valor ms
pequeo de direccin fsica mientras lmite de registro contiene un rango de
direcciones lgicas. Cada direccin lgica debe ser menor que el registro lmite.
2
Asignacin
mltiple-
particin
En este tipo de asignacin, la memoria principal se divide en un nmero de
particiones fijas de tamao donde cada particin debe contener slo un
proceso. Cuando una particin es libre, se selecciona un proceso de la cola de
entrada y se carga en la particin libre. Cuando el proceso termina, la particin
est disponible para otro proceso.
Fragmentacin
Como los procesos se cargan y se quitan de la memoria, el espacio de memoria libre se rompe en pequeos pedazos. Sucede
a veces despus de que los procesos no pueden ser asignados a los bloques de memoria que se consideren sus pequeos
bloques de tamao y memoria queda sin utilizar.Este problema se conoce como fragmentacin.
La fragmentacin es de dos tipos
SN Fragmentacin Descripcin
1
Fragmentacin
externa
El espacio total de memoria es suficiente para satisfacer una solicitud o para
residir en un proceso, pero no es contigua por lo que no se puede utilizar.
2
Fragmentacin
interna
Bloque de memoria asignada al proceso es ms grande. Una parte de la
memoria no se utiliza, ya que no puede ser utilizado por otro proceso.
Fragmentacin externa se puede reducir mediante la compactacin o de memoria aleatoria contenidos para colocar toda la
memoria libre en un solo gran bloque. Para hacer posible la compactacin, la reubicacin debe ser dinmico.
Paging
Fragmentacin externa se evita utilizando la tcnica de paginacin. La localizacin es una tcnica en la que la memoria fsica
se divide en bloques de las pginas de mismo tamao llamados (el tamao es potencia de 2, entre 512 bytes y 8192
bytes). Cuando un proceso se va a ejecutar, es pginas correspondientes se cargan en los marcos de memoria disponibles.
Espacio de direcciones lgicas de un proceso puede ser no contiguo y un proceso est asignada la memoria fsica cada vez
que el marco de la memoria libre disponible. El sistema operativo mantiene un registro de todos los marcos libres. Sistema
operativo necesita n marcos libres para ejecutar un programa de tamao n pginas.
Direccin generada por la CPU se divide en
Nmero de pgina (p) - el nmero de pgina se utiliza como un ndice en una tabla de pginas que contiene la
direccin base de cada pgina en la memoria fsica.
Desplazamiento de pgina (d) - desplazamiento pgina se combina con direccin base para definir la direccin de
memoria fsica.
Siguiendo la figura
mostrar la
arquitectura tabla
paginacin.
Segmentacin
La segmentacin es
una tcnica para
romper en pedazos
de memoria lgicos
donde cada pieza
representa un grupo
de informacin
relacionada. Por
ejemplo, los
segmentos de datos
o segmento de
cdigo para cada
proceso, segmento
de datos para el
sistema operativo y
as
sucesivamente. La
segmentacin se
puede implementar
utilizando o sin
utilizar paginacin.
A diferencia de
paginacin,
segmento estn
teniendo diferentes
tamaos y por lo
tanto elimina la
fragmentacin
interna. Fragmentacin externa todava existe, pero en menor medida.
Direccin generada por la CPU se divide en
Nmero (s) Segmento - nmero de segmento se utiliza como un ndice en una tabla de segmentos que contiene la
direccin base de cada segmento en la memoria fsica y un lmite de segmento.
Segmento de desplazamiento (o) - desplazamiento segmento se comprueba contra el lmite primero y luego se
combina con direccin base para definir la direccin de memoria fsica.
Sistema operativo - Memoria Virtual
La memoria virtual es una tcnica que permite la ejecucin de procesos que no son completamente disponible en la
memoria. La principal ventaja visible de este esquema es que los programas pueden ser ms grandes que la memoria
fsica. La memoria virtual es la separacin de usuario memoria lgica de la memoria fsica.
Esta separacin permite una cantidad extremadamente grande de memoria virtual que se facilitar para los programadores
cuando slo una memoria fsica ms pequea est disponible. Los siguientes son los situaciones, cuando no se requiere todo
el programa para ser cargado completamente en la memoria principal.
Rutinas de tratamiento de errores de usuario escrito slo se utilizan cuando se produjo un error en los datos o la
computacin.
Determinadas opciones y caractersticas de un programa se pueden usar en raras ocasiones.
Muchas tablas se les asigna una cantidad fija de espacio de direcciones a pesar de que se utiliza en realidad slo una
pequea cantidad de la tabla.
La capacidad de ejecutar un programa que es slo parcialmente en la memoria contrarrestara muchos beneficios.
Menor nmero de E / S se necesitara para cargar o cambiar cada programa de usuario en la memoria.
Un programa ya no
estara limitada por la
cantidad de memoria
fsica que est
disponible.
Cada programa de
usuario podra tomar
menos memoria
fsica, ms
programas se
podran funcionar al
mismo tiempo, con
un aumento
correspondiente en la
utilizacin de la CPU
y el rendimiento.
La memoria virtual es
comnmente
implementado por la
demanda
paginacin. Tambin
se puede
implementar en un
sistema de
segmentacin. Segmentacin de la demanda tambin se puede utilizar para proporcionar memoria virtual.
Sistema operativo - Hardware O / I
Informacin general
Computadoras operan en muchos tipos de dispositivos. Tipos generales incluyen los dispositivos de almacenamiento (discos,
cintas), dispositivos de transmisin (tarjetas de red, mdems), y dispositivos de interfaz humana (pantalla, teclado,
ratn). Otros dispositivos son ms especializados. Un dispositivo se comunica con un sistema informtico mediante el envo de
seales a travs de un cable o incluso a travs del aire.
El dispositivo se comunica con la mquina a travs de un punto de conexin denomina un puerto (por ejemplo, un puerto
serie). Si uno o ms dispositivos utilizan un conjunto comn de cables, la conexin se llama un autobs .En otros trminos, un
bus es un conjunto de cables y un protocolo definido rgidamente que especifica un conjunto de mensajes que se pueden
enviar en los cables.
En cadena
Cuando el dispositivo A tiene un cable que se conecta al dispositivo B, y el dispositivo B tiene un cable que se conecta al
dispositivo de C y C dispositivo se conecta a un puerto en el equipo, este arreglo se llama una cadena de margarita. Por lo
general, funciona como un autobs.
Controlador
Un controlador es un conjunto de componentes electrnicos que pueden operar un puerto, un autobs, o un dispositivo. Un
controlador de puerto serie es un ejemplo de un controlador de dispositivo simple. Se trata de un nico chip en la computadora
que controla las
seales en los cables
de un puerto serie.
El controlador de bus
SCSI se suele
implementar como
una placa de circuito
separado (un
adaptador de host)
que se conecta al
ordenador. Contiene
un procesador,
microcdigo, y
algunos memoria
privada para que
pueda procesar los
mensajes del
protocolo
SCSI. Algunos
dispositivos tienen
sus propios
controladores
integrados.
Puerto I / O
Un puerto I / O
tpicamente consta
de cuatro registros,
llamado el estado,
control, registros de
datos de salida de
datos en, y.
SN Registro y Descripcin
1
Registro de estado
El registro de estado contiene bits que pueden ser ledos por el anfitrin. Estos bits indican
estados como si el comando actual ha terminado, ya sea un byte est disponible para ser ledo
de los datos-en el registro, y si se ha producido un error en el dispositivo.
Registro de control
El registro de control se puede escribir por el anfitrin para iniciar un comando o para cambiar el
2 modo de un dispositivo. Por ejemplo, un determinado bit en el registro de control de un puerto
serial elige entre la comunicacin full-duplex y half-duplex, otro posible una verificacin de
paridad, un tercer bit establece la longitud de palabra de 7 u 8 bits, y otros bits seleccione una de
las velocidades soportadas por el puerto serie.
3
Datos en el registro
El registro de datos en el que se lee por el anfitrin para obtener la entrada.
4
Registro de datos de salida
El registro de datos se escribe a cabo por el anfitrin para enviar la salida.
Polling
El sondeo es un proceso por el cual un host espera controlador response.It es un proceso de bucle, de leer el registro de
estado una y otra vez hasta que el bit ocupado de registro de estado se vuelve claro.El controlador utiliza / establece el bit
ocupado cuando est ocupado trabajando en un comando, y borra el bit de ocupado cuando est listo para aceptar el
siguiente comando. El anfitrin seala su deseo a travs del bit-comando listo en el registro de comando. El anfitrin establece
el bit-comando listo cuando un comando est disponible para el controlador para ejecutar.
En el siguiente ejemplo, el anfitrin escribe salida a travs de un puerto, en coordinacin con el controlador de protocolo de
enlace
El anfitrin lee repetidamente el bit ocupado hasta que poco se hace evidente.
El anfitrin establece el bit de escritura en el registro de comandos y escribe un byte en el registro de datos de salida.
El anfitrin establece el bit de mando listo.
Cuando el controlador se da cuenta de que el bit de comando listo se establece, se establece el bit ocupado.
El controlador lee el registro de comando y ve el comando de escritura.
Se lee el registro de datos de salida para obtener el byte, y hace el I / O para el dispositivo.
El controlador borra el bit de comando listo, borra el bit de error en el registro de estado para indicar que el dispositivo
de E / S logr, y borra el bit ocupado para indicar que ha terminado.
Dispositivos de E / S
I / O se pueden clasificar en categora siguiente.
SN Categora y Descripcin
1
Legible
Dispositivos legible por humanos son adecuados para la comunicacin con el usuario de la
computadora. Ejemplos son las impresoras, terminales de video, teclado, etc
2
Legible por mquina
Dispositivos de lectura mecnica son adecuadas para la comunicacin con los equipos
electrnicos. Ejemplos de ello son las unidades de disco y cinta, sensores, controladores y
actuadores.
2
Comunicacin
Los dispositivos de comunicacin son adecuados para la comunicacin con dispositivos
remotos.Ejemplos de ello son los conductores de lnea digital y mdems.
A continuacin se presentan las diferencias entre O Dispositivos / I
SN Criterios y descripcin
1
La velocidad de datos
Puede haber diferencias de varios rdenes de magnitud entre las tasas de transferencia de
datos.
2
Aplicacin
Diferentes dispositivos tienen diferente uso en el sistema.
3
Complejidad de control
Un disco es mucho ms complejo, mientras que la impresora requiere sencilla interfaz de
control.
4
Unidad de transferencia
Los datos pueden ser transferidos como un flujo de bytes o caracteres o en bloques ms
grandes.
5
Representacin de datos
Diferentes esquemas de codificacin de datos se utilizan para diferentes dispositivos.
6
Condiciones de error
La naturaleza de los errores se diferencia mucho de un dispositivo a otro.
Acceso directo a memoria (DMA)
Muchos ordenadores evitar sobrecargar la CPU principal con E / S programada mediante la descarga de parte de este trabajo
a un procesador de propsito especial. Este tipo de procesador se llama, un controlador de acceso directo a memoria
(DMA). Una unidad de control especial se utiliza para transferir bloques de datos directamente entre un dispositivo externo y la
memoria de trabajo, sin la intervencin del procesador. Este enfoque se denomina acceso directo a memoria (DMA).
DMA se puede utilizar con cualquiera de sondeo o software de interrupcin. DMA es particularmente til en dispositivos como
los discos, donde muchos bytes de informacin pueden ser transferidos en operaciones individuales de E / S. Cuando se
utiliza con una interrupcin, la CPU se notifica slo despus de todo el bloque de datos se han transferido. Para cada byte o
palabra transferidos, debe proporcionar la direccin de memoria y todas las seales del bus de control de la transferencia de
datos.Interaccin con un controlador de dispositivo se gestiona a travs de un controlador de dispositivo.
El apretn de manos es un proceso entre el controlador de DMA y el controlador de dispositivo. Se realiza a travs de cables
utilizando trminos DMA peticin y DMA reconocen.
Paso Descripcin
Controlador de dispositivo es instruido para transferir datos del disco a una direccin de
1 memoria intermedia X.
2 Controlador de dispositivo entonces instruir controlador de disco para transferir datos al bfer.
3 Controlador de disco se inicia la transferencia DMA.
4 Controlador de disco enva cada byte al controlador DMA.
5
Transferencias de controlador DMA bytes para amortiguar, incrementa la direccin de
memoria, disminuye el contador C hasta C se convierte en cero.
6
Cuando C se convierte en cero, DMA interrumpe la CPU a la seal de finalizacin de
transferencia.
Controladores de dispositivo
Un sistema informtico contiene un muchos tipos de dispositivos de E / S y sus respectivos controladores
tarjeta de red
adaptador de grficos
controlador de disco
Controlador de DVD-ROM
puerto serie
USB
tarjeta de sonido
Sistema operativo - E / S Softwares
Interrupciones
El hardware de la CPU utiliza un alambre de lnea de solicitud de interrupcin de la CPU que ayuda a detectar despus de la
ejecucin de cada instruccin. Cuando la CPU comprueba que un controlador ha puesto una seal en la lnea de peticin de
interrupcin, la CPU guarda un estado, tales como el valor actual del puntero de la instruccin, y salta a la rutina de manejador
de interrupciones en una direccin fija. La parte manejador de interrupciones determina la causa de la interrupcin, realiza el
procesamiento necesario y ejecuta una instruccin de interrupcin a la CPU volver a su estado de ejecucin.
El mecanismo bsico de interrurpt permite a la CPU para responder a un evento asncrono, tal como cuando un controlador de
dispositivo de convertirse en listo para el servicio. La mayora de las CPU tienen dos lneas de peticin de interrupcin.
interrupcin no enmascarable - Ese tipo de interrupciones estn reservados para eventos como errores de memoria
irrecuperables.
interrupcin enmascarable - Tales interrupciones se puede apagar por la CPU antes de la ejecucin de instrucciones
importantes que no deben ser interrumpidos.
El mecanismo de interrupcin acepta una direccin - un nmero que selecciona un especfico tratamiento de interrupciones
rutina / funcin de un pequeo set.In mayora de las arquitecturas, esta direccin es un offset almacenado en una tabla
llamada tabla de vectores de interrupcin. Este vector contiene las direcciones de memoria de manejadores de interrupciones
especializados.
Aplicacin I O Interface /
Aplicacin I / O Interface representa las tcnicas de estructuracin e interfaces para el sistema operativo para permitir que los
dispositivos de E / S para ser tratados en un estndar, de manera uniforme. Las diferencias reales radica mdulos de nivel de
kernel denominadas controladores de dispositivos que estn hechas a medida para los dispositivos correspondientes pero que
muestran una de las interfaces estndar para las aplicaciones. El propsito de la capa de controlador de dispositivo es ocultar
las diferencias entre los controladores de dispositivos del subsistema de E / S del ncleo, tales como las llamadas al sistema
de E / S. A continuacin se presentan las caractersticas de las interfaces de E / S con el respetado a los dispositivos.
Carcter-stream / bloquear - Un personaje-stream dispositivo transfiere bytes de uno a uno de la moda, mientras que
un dispositivo de bloques transfiere una unidad completa de bytes.
Secuencial / random-access - A secuenciales transfiere datos de dispositivos en un orden fijo establecido por el
dispositivo, el dispositivo de acceso aleatorio puede ser instruido para buscar la posicin de cualquiera de las
ubicaciones de almacenamiento de datos disponibles.
Sncrono / asncrono - Un dispositivo sncrono realiza transferencias de datos con tiempo de respuesta conocido
donde como un dispositivo asncrono muestra el tiempo de respuesta irregular o impredecible.
Dedicado para compartir / - Un dispositivo compartible puede ser utilizado simultneamente por varios procesos o
hilos de un dispositivo dedicado, pero no se puede utilizar.
Velocidad de operacin - velocidades de dispositivo puede variar desde unos pocos bytes por segundo hasta unos
pocos gigabytes por segundo.
Lectura y escritura, de slo lectura o slo escritura - Algunos dispositivos funcionan tanto de entrada como de
salida, pero otros slo admiten una direccin de datos que slo se lee.
Relojes
Relojes tambin se llaman temporizadores. El software del reloj toma la forma de un controlador de dispositivo a travs de un
reloj no es ni un dispositivo de bloqueo ni un dispositivo de caracteres basado.El software de reloj es el controlador del
reloj. La funcin exacta del controlador de reloj puede variar dependiendo del sistema operativo. Generalmente, las funciones
del controlador de reloj incluyen los siguientes.
SN Tarea Descripcin
1
El
mantenimiento
de la hora del
da
El controlador del reloj implementa la hora del da o el reloj de tiempo real
function.It requiere incrementar un contador en cada ciclo de reloj.
2
La prevencin
de los
procesos de
ejecucin
demasiado
larga
Como se inicia un proceso, el programador inicializa el contador cuntico en
ciclos de reloj para el proceso. El controlador del reloj disminuye el contador
cuntico por 1, en cada interrupcin del reloj. Cuando el contador llega a cero,
el conductor de reloj llama el planificador para programar otro proceso. As
controlador del reloj ayuda en la prevencin de los procesos se ejecuten
durante ms porcin de tiempo permitido.
3
Contabilizacin
de uso de la
CPU
Otra funcin realizada por el conductor del reloj est haciendo la contabilidad
de la CPU.Contabilidad CPU implica saber cunto tiempo ha ejecutar el
proceso.
4
Proporcionar
temporizadores
de supervisin
para las partes
del propio
sistema
Temporizadores de supervisin son los temporizadores establecidos por
ciertas partes del sistema. Por ejemplo, para utilizar un disquete, el sistema
debe encender el motor y espere aproximadamente 500 ms para que llegue a
la velocidad.
Kernel I O Subsistema /
Kernel de E / S del subsistema es responsable de proveer muchos servicios relacionados con E / S. Los siguientes son
algunos de los servicios prestados.
Programacin - horarios Kernel un conjunto de solicitudes de E / S para determinar un orden en el que para su
ejecucin. Cuando una aplicacin emite una llamada de bloqueo del sistema de E / S, la solicitud se coloca en la cola
para ese dispositivo. El planificador Kernel I / O reorganiza el orden de la cola para mejorar la eficiencia general del
sistema y el tiempo de respuesta medio experimentado por las aplicaciones.
Buffering - Kernel de E / S del subsistema mantiene una zona de memoria conocida como memoria intermedia que
almacena datos mientras se transfieren entre dos dispositivos o entre un dispositivo con un funcionamiento de la
aplicacin. Buffering se hace para hacer frente a una falta de coincidencia de velocidad entre el productor y el
consumidor de un flujo de datos o para adaptar entre dispositivos que tienen diferentes tamaos de transferencia de
datos.
Caching - Kernel mantiene la memoria cach que es la regin de rpida memoria que contiene copias de los datos. El
acceso a la copia en cach es ms eficiente que el acceso a la original.
En cola y Reserva de dispositivos Un carrete es un tampn que mantiene la salida de un dispositivo, tal como una
impresora, que no puede aceptar flujos de datos intercalados. El sistema copia en cola La ficheros de cola en cola a la
impresora de una en una. En algunos sistemas operativos, la cola de impresin se gestiona mediante un proceso
demonio. En otros sistemas operativos, que es manejada por un hilo en el kernel.
Manejo de errores Un sistema operativo que utiliza memoria protegida puede proteger contra muchos tipos de errores
de hardware y de aplicaciones.
Controlador de dispositivo
Controlador de dispositivo es un programa o rutina desarrollado para un dispositivo de E / S. Un controlador de dispositivo
implementa operaciones I / O o comportamientos de una clase especfica de dispositivos. Por ejemplo, un sistema compatible
con uno o una serie de mltiples marcas de terminales, todos los terminales ligeramente diferentes pueden tener un solo
controlador terminal. En la estructura en capas del sistema de I / O, controlador de dispositivo se encuentra entre manejador
de interrupciones y el dispositivo de software de E / S independiente. El trabajo de un controlador de dispositivo estn
siguiendo.
Para aceptar la peticin desde el dispositivo de software independiente por encima de ella.
Para velar por que se ejecute la solicitud.