Beruflich Dokumente
Kultur Dokumente
Tema:
Gestin de Procesos en Mac Os
Integrantes: Cedulas:
Grupo: 11R221
Fecha: 27/09/17
ndice
Introduccin
En los ltimos aos se puede apreciar cmo, dentro de los tres Sistemas Operativos ms utilizados
para computadoras personales, hay una especie de batalla por presentar cual ofrece mejores
prestaciones. Estos tres sistemas mencionados son Windows 7 de Microsoft, Ubuntu de Linux, y
Mac OS X de Apple.
Se define la funcin del sistema operativo como gestor de recursos en contraste con su papel de
interfaz con las aplicaciones. Desde este punto de vista cobra relevancia el rendimiento, como
medida de la calidad del diseo, la implementacin y la configuracin de un sistema operativo. Un
aspecto fundamental del diseo del sistema operativo Mac OS X, es su estructura. Las propuestas
avanzadas tienen que competir con la inercia y la experiencia acumulada con las estructuras
clsicas. Finalmente, es preciso considerar los condicionantes que el entorno comercial impone
sobre la difusin y el xito de un determinado sistema operativo.
Gestin de Procesos
Qu es?
Utilizando la definicin dada en el material de la asignatura Sistemas Operativos se va a
explicar qu es un proceso. La definicin es la siguiente: Un proceso es bsicamente un
entorno formado por todos los recursos necesarios para ejecutar programas. Desde el punto
de vista del SO, un proceso es un objeto ms que hay que gestionar y al cual hay que dar
servicio
Mientras que un proceso sera la ejecucin de ese programa, es decir, el programa en accin.
Esto indica que los procesos son dinmicos, estn en constante cambio debido a estos
recursos necesarios, ya que al intentar realizar algn tipo de accin puede ser que tenga que
permanecer a la espera de que dicho recurso est disponible, por ejemplo una peticin de
lectura del disco duro, y que el brazo lector del disco duro lo est utilizando otro proceso.
Programa vs Proceso?
Programa es una aplicacin del sistema operativo listo para ser ejecutado, cuando el SO
asigna unos recursos este pasa a ser un proceso.
Algoritmo de MAC
Algoritmo Round Robin es la seleccin de proceso de forma equitativa, comenzando desde
el primero hasta el ltimo de forma justa para todos los procesos para ello usa el quantum es
el tiempo de cada proceso cuando a un proceso se le termina el quantum se le coloca al final
dela cola del siguiente nivel.
Utiliza I/O Ki:
El Kit de I/O es un marco de cdigo abierto en el ncleo XNU que ayuda a los desarrolladores
de controladores de dispositivos de cdigo para Mac OS X de Apple iOS y sistemas
operativos.
Creacin y destruccin de procesos
El estudio del sistema UNIX es debido a que tanto el sistema Linux como el sistema Mac OS
X estn basados en dicho sistema, por lo que es ms razonable hacer la mencin a UNIX y
no a estos dos sistemas. Las nicas diferencias fundamentales detectadas entre UNIX y Mac
OS X se basan en el sistema de ficheros, donde Mac OS X utiliza HFS+ frente al UFS de
UNIX y el estndar ext3 de Linux.
Respecto al Kernel, ambos sistemas estn basados en el Kernel de UNIX, pero actualmente
Mac OS X utiliza un hbrido del ncleo de UNIX Mach llamado XNU, mientras que Linux
utiliza un ncleo monoltico llamado Linux.
UNIX.
Los procesos en los sistemas UNIX estn identificados por un nmero que es nico (PID),
adems de que cada proceso el espacio de memoria utilizado, formado por tres segmentos:
el cdigo, los datos y la pila. Tambin contiene la informacin de control del proceso, que
indica la planificacin y estado del proceso, la estructuracin de datos y la comunicacin
entre procesos. Otra informacin importante es el nmero de identificacin de usuario (UID)
y el nmero de identificacin del grupo de usuarios al que pertenece el proces (GID). Todo
ello pertenece al bloque de control de proceso (PCB).
La creacin y destruccin de procesos en UNIX se ajusta a la filosofa de la manera ms
sencilla posible, as las llamadas al sistema tienen el mnimo nmero de parmetros. Las
llamadas correspondientes a la creacin, destruccin y bloque o espera de un proceso son
respectivamente: fork, exit y wait. La llamada fork crea un nuevo proceso hijo idntico al
proceso padre. Tienen la misma imagen de memoria, el mismo bloque de control de proceso
y los mismos archivos abiertos, aunque situados en distintos espacios de memoria.
Para poder distinguir a ambos procesos, la llamada fork devuelve distintos valores, el hijo
recibe un valor 0 y el padre el PID del hijo.
La llamada exit finaliza un proceso. Cuando se produce esta finalizacin del proceso hijo, se
manda al sistema la llamada wait, para que el padre se bloquee a la espera de la finalizacin
del hijo. Si el proceso hijo finalizara antes de que el padre recibiera esta llamada, el proceso
hijo se convertira en un proceso en estado zombie, y hasta que no se ejecute esta llamada
wait el proceso no se eliminar. Para evitar la acumulacin de procesos UNIX prev un lmite
de nmeros de procesos zombie y aquellos procesos hijos que se destruyen ms tarde que sus
procesos padres, al quedar hurfanos sera el primer proceso del sistema (init) el que se
encarga de recoger su estado de finalizacin.
La llamada wait bloquea el proceso que lo ha llamado hasta que uno de sus procesos hijos es
destruido, por lo que si el proceso no tiene hijos wait regresa y el valor devuelto es igual al
Pid de dicho proceso hijo.
En UNIX se puede utilizar un comando para eliminar un proceso que se est ejecutando por
la razn que estimemos oportuno; gran consumo de recursos, ya no es necesario, etc. Esta
orden es kill Pid proceso a eliminar, por lo que para eliminar un proceso primero se debe
conocer su Pid.
StartupItems
Son Packs compuestos generalmente por scripts y archivos de configuracin de
aplicaciones.
Se lanzan justo al final del proceso de arranque, pero antes de cualquier inicio de
sesin.
Brindan servicios a todos los usuarios del sistema, como por ejemplo, acceso a algn
hardware instalado.
Una vez autenticado el usuario, LoginWindow procede a cargar el entorno del usuario, tales
como:
-Carga el entorno del Usuario segn las preferencias, variables de entorno, permisos de
acceso a los archivos o dispositivos, etc
-Lanza el Dock (parecido al Escritorio de Windows), el Finder (es una aplicacin de sistema
que acta como interface primaria para la interaccin con el sistema de archivos) y el
SystemUIServer.
Despus de la carga
Si los procesos Finder y Dock son terminados mueren por algn motivo desconocido,
LoginWindow automticamente los lanza de nuevo.
Una vez que la sesin de usuario est funcionando, LoginWindow, monitorea dicha sesin y
las aplicaciones de usuario de la siguientes maneras:
Maneja la parte de LogOut, reinicio y terminacin de procesos.
Maneja el Force Quit Windows, que monitorea las aplicaciones activas y responde a los
pedidos de los usuario de matar procesos o reiniciar el Finder
Muestra cuadros de dialogo de alerta cuando recibe notificaciones de aplicaciones ocultas
(aplicaciones sin interfaz de usuario).
Escribe cualquier error Standard en un archivo Log que despus ser usado por la aplicacin
Console.
App Nap
Permite darle toda o la mayora de recursos a la aplicacin que tenemos en primer plano.
Es decir, las aplicaciones que quedan ocultas tras la ventana de la aplicacin principal, los
procesos bajan de prioridad pasando a segundo plano.
Ejemplo
A continuacin se presentan el funcionamiento de App Nap con 10 aplicaciones abiertas, con
slo 2 en primer plano de la pantalla (Safari y Monitor de actividad).
8 aplicaciones que no se ven dejan de consumir recursos, siempre y cuando no se trate de
una aplicacin que est, por ejemplo, reproduciendo msica o vdeo.
Timer Coalescing
Tecnologa est destinada a los equipos porttiles de Apple.
En todas las Mac existen una serie de tareas que se realizan en segundo plano y que consumen
recursos de forma habitual, pero cada una a su tiempo.
Time Coalescing juntar todos esos procesos, los alinea y hacer que todos a la vez realicen las
tareas que requieren, evitando as un consumo de energa en una batera de una
porttil, reduciendo hasta un 72 por ciento el consumo de la CPU.
Con GCD, el SO es quien gestiona los hilos de ejecucin, no las aplicaciones. Las Apps
distribuyen su trabajo automticamente en todos los ncleos disponibles, lo que significa un
rendimiento extraordinario.
XPC
Realiza una combinacin de uso de launchd, GCD, y sandboxing (sistema de seguridad que
trabaja con aislamiento de ambientes) para proporcionar un mecanismo para factorizar una
aplicacin en una familia de procesos y coordinarlos adecuadamente.
Conclusin
Cada Proceso que realiza nuestro sistema operativo es semejante a los procesos que
se lleva en la vida cotidiana de un ser humano.
Cada Proceso necesita una serie de recursos, y cada proceso es secuencial para ser
atendido, ocupa un espacio de memoria que contiene el programa ejecutable, sus
datos, su pila, conjunto de registros asociados al proceso.
Cada OS tiene una jerarqua para los procesos, tal es el caso de UNIX que tiene una
estructura establecida de atender procesos.