Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Sistemas
Operativos
Tarea No. 2
Proceso
Un proceso es una secuencia de pasos dispuesta con algn tipo de lgica que se
enfoca en conseguir un resultado especfico, son implementados para mejorar la
productividad de algo, establecer un orden o eliminar algn tipo de problema.
Dentro de los sistemas operativos un proceso es un programa en ejecucin,
bsicamente es una actividad de cierto tipo que contiene un programa, entradas,
salidas y estados. Un programa sencillo genera un proceso. Cualquier aplicacin de
usuario que quiera realizar varias acciones de manera simultnea por ejemplo atender
la interfaz de usuario y manejar las conexiones de red, puede crear varios procesos
que se ejecutan en paralelo. Existen 4 formas de crear un proceso:
o
Salida por error: Se representa cuando el proceso tiene que salir debido a
insuficiencia de datos.
Error fatal: Este sucede por un error en el programa, como las divisiones entre 0 o
requerimiento de memoria inaccesible.
Adems de ser creados y terminados los procesos pueden ser suspendidos, un proceso
suspendido solo puede ser reanudado por otro. La suspensin temporaria puede ser
necesaria cuando el sistema est muy cargado. Si la suspensin fuera por largo
tiempo, deberan liberarse los recursos apropiados, por ejemplo, la memoria debera
liberarse inmediatamente. Al reanudar un proceso se le activa desde el punto que se
le suspendi. Los procesos pueden suspenderse por:
o
Carga elevada del sistema, se suspende hasta que los niveles sean ms aptos.
Maquina Virtual
Es un software que simula a una computadora y puede ejecutar programas como si
fuese una computadora real, una caracterstica esencial de las mquinas virtuales es
que los procesos que ejecucin estn limitados por los recursos que se le hayan sido
proporcionados.
Modo Usuario: El proceso est siendo ejecutado por una CPU. En un momento
dado slo puede haber tantos procesos en ejecucin como CPUs fsicas tenga
la mquina. Adems la CPU est funcionando en modo usuario, es decir que
est ejecutando cdigo del espacio de usuario. Si el cdigo est mal escrito y
se produce un error, la aplicacin terminar.
Modo Kernel: El proceso est siendo ejecutado por una CPU, y la CPU est
funcionando en modo ncleo. Slo el kernel del SO se ejecuta en modo ncleo.
Cuando una CPU funciona en modo ncleo o modo supervisor, permite realizar
algunas operaciones que estn prohibidas en modo usuario. De esta manera el
ncleo del sistema operativo puede controlar todo el sistema informtico. Si el
cdigo est mal escrito y se produce un error probablemente todo el sistema se
detenga.
Modelo de 3 estados
En el modelo de tres estados se establece el estado de
bloqueado a diferencia de el de dos ya que en realidad, los
procesos utilizan datos para operar con ellos, y puede
suceder que no se encuentren listos o que se deba esperar
algn suceso antes de continuar. Es por esto que se cre el
estado de bloqueado, porque se necesita un estado donde
los procesos permanecieran como dice la palabra
bloqueados esperando hasta que puedan proseguir.
Estados
o
o
o
o
o
o
o
Modelo de 7 estados
Se aade al modelo de 5 estados un nuevo estado suspendido, que indica que un
proceso no se encuentra en memoria principal sino que est almacenado en disco
(memoria secundaria). Dicho estado se subdivide en dos:
o
Multiprogramacin
La multiprogramacin es una tcnica de
multiplexacion que permite la ejecucin
simultnea de mltiples procesos en un
nico proceso. En realidad, esta
tcnica
Multiprocesamiento
Un sistema de multiprocesamiento consiste en una computadora que tiene ms de un
procesador o bien computadoras con CPUs o procesadores independientes. La
mayora de computadoras supervisoras se disean especficamente para dar soporte
a mltiples procesadores. Incluyen un bus de altas prestaciones, decenas de MB para
memoria con correccin de errores, sistemas de disco redundantes, arquitecturas
avanzadas de sistemas que reducen los cuellos de botella utilidades redundantes,
como mltiples fuentes de alimentacin.
Existen dos tipos de diseos de sistemas multiprocesador:
o
Interrupciones
Una interrupcin es una seal recibida por
el procesador de un ordenador, indicando
que debe interrumpir el curso de ejecucin
actual y pasar a ejecutar cdigo especfico
para tratar esta situacin, las interrupciones
dan lugar a subrutinas de servicio de
interrupcin para ejecutarse, las cuales
generalmente pertenecen al sistema operativo o
al BIOS, una vez terminada dicha subrutina se
reanuda la ejecucin del programa.
Errores de programacin.
Condiciones anmalas.
Programadas
o
#
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Exception
Divide error
Debug
NMI
Breakpoint
Overflow
Bounds check
Invalid opcode
Device not available
Double fault
Coprocessor
segment overrun
Invalid TSS
Segment not present
Stack segment fault
General protection
Page fault
Intel-reserved
Floating-point error
Aligment check
Machine check
SIMD floating point
Exception handler
divide_error()
debug()
nmi()
int3()
overflow()
bounds()
invalid_op()
device_not_available()
doublefault_fn()
coprocessor_segment_overrun()
Signal
SIGFPE
SIGTRAP
None
SIGTRAP
SIGSEGV
SIGSEGV
SIGILL
None
None
SIGFPE
invalid_TSS()
segment_not_present()
stack_segment()
general_protection()
page_fault()
none
coprocessor_error()
aligment_check()
machine_check()
simd_coprocessor_error()
SIGSEGV
SIGBUS
SIGBUS
SIGSEGV
SIGSEGV
None
SIGFPE
SIGBUS
None
SIGFPE
Hebras o hilos
Una hebra de ejecucin es similar a un proceso en cuanto a que puede ser
planificada para ejecucin. Un programa multihebra puede realizar varias tareas
simultneamente, las hebras, como los procesos, dan soporte a la programacin
concurrente, a diferencia de los procesos, no tienen todas las estructuras de control
que les permiten un funcionamiento independiente. Normalmente la asignacin de
recursos no se realiza por hebra, sino por proceso, y en un mismo proceso puede haber
varias hebras de ejecucin.
Las hebras ofrecen un mayor rendimiento pues los cambios de contexto son menos
costosos. En algunos procesos hay varias hebras, y por si alguna razn el proceso
termina, todas las hebras se ven afectadas.
Los hilos se distinguen de los procesos en que los procesos son generalmente
independientes, llevan bastante informacin de estados e interactan solo a travs de
mecanismos de comunicacin dados por el sistema, por otra parte, muchos hilos
generalmente comparten otros recursos de forma directa. En muchos de los sistemas
operativos que dan facilidades a los hilos, es ms rpido cambiar de un hilo a otro
dentro del mismo proceso, que cambiar de un proceso a otro. Este fenmeno se debe
a que los hilos comparten datos y espacios de direcciones, mientras que los procesos,
al ser independientes, no lo hacen.
El soporte para hebras puede implementarse de diferentes maneras, por ejemplo:
Hilos:Procesos
1:1
M:1
1:M
M:M
Descripcin
Por cada hebra de ejecucin
hay un proceso, con sus
propios recursos y espacio de
direcciones. Una hebra es un
proceso.
Cada proceso cuenta con su
espacio de direcciones y sus
recursos, en un proceso
pueden existir varias hebras.
Todas las hebras comparten
los recursos asignados al
proceso.
Una hebra puede emigrar de
un proceso a otro. Por lo
tanto puede migrar entre
diferentes sistemas (clster).
Combina los casos M:1 y 1:M
Sistemas de ejemplo
Unix System V
Ra
TRIX
kill Termina un proceso, su sintaxis seria kill PID donde PID es el ID del
proceso, kill l muestra todas las posibles seales que se le pueden enviar
a un proceso.
Bibliografa
http://definicion.mx/proceso/
http://www.monografias.com/trabajos14/administ-procesos/administ-procesos.shtml
http://es.wikipedia.org/wiki/M%C3%A1quina_virtual
http://noridappr89.wordpress.com/2013/03/05/modelo-de-cincoseissiete-estados/
http://www.slideboom.com/presentations/709252/Modelos-de-estados-de-procesos
http://es.slideshare.net/sueich/modelo-5-estados
http://es.slideshare.net/WAROSANTA/sistemas-operativos?next_slideshow=1
http://www.csicsif.es/andalucia/modules/mod_ense/revista/pdf/Numero_23/MARIA_CATALA_CARBONERO02.pdf
https://1984.lsi.us.es/wiki-ssoo/index.php/Multiprogramaci%C3%B3n
http://www1.frm.utn.edu.ar/soperativos/Archivos/procesos.pdf
http://es.wikipedia.org/wiki/Proceso_(inform%C3%A1tica)#Creaci.C3.B3n_de_un_proceso
http://www.fing.edu.uy/inco/cursos/tso/teorico/TSO-Interrupciones.pdf
http://es.wikipedia.org/wiki/Interrupci%C3%B3n