Sie sind auf Seite 1von 13

Universidad Tecnolgica de Panam

Facultad de Ingeniera en Sistemas Computacionales


Lic. En Redes Informtica

Tema:
Gestin de Procesos en Mac Os

Profesora: Lourdes Jaramillo

Integrantes: Cedulas:

Adan Esquivel 8-869-369


Christopher Duncan 8-906-2369
Daniel Estrivi 8-907-939
Jeniffer Leal 8-930-1082
Jos Jimnez 8-909-997

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.

Por ende, en este trabajo solo nos centraremos en 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.

Principales Procesos MAC OS X


Estos procesos permiten iniciar aplicaciones previamente instaladas al arranque del SO,
monitorearlas, y ofrecer servicios desde antes del inicio de sesin, durante la sesin, y
proveen esquemas para el mejoramiento del rendimiento de MAC OS X:
Apps de arranque en la sesin del usuario
StartupItems
Launchd (LaunchAgents y LaunchDaemons)
Loginwindows
App Nap
Timer Coalescing
Grand Central Dispatch
XPC
Apps de arranque en la sesin del usuario

Corresponde a la seccin del usuario donde se seleccionan directamente cuales Apps se


requieren arranquen al inicio de sesin. Esto se ejecuta individualmente en cada sesin de
usuario.

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.

Launchd (LaunchAgents y LaunchDaemons)


LaunchAgents
Es el primer proceso lanzado por el SO MAC.
Encargado de la creacin del resto de procesos que componen el Sistema Operativo.
Se identifica su inicio tras mostrar la pantalla de inicio de sesin, o el fondo de
pantalla, etc.
Proceso relativamente joven, debut en Mac OS X Tiger como una gran revolucin.
Caracterstica principal, es lanzar los daemons del sistema bajo demanda, y no todos
desde el inicio de la sesin. Agilizando enormemente el proceso de carga.
Sustituye al proceso init, nombre seguramente familiar para ms de uno.
Launchd / Acciones
No muere al terminar la carga del sistema, permanece activo y se encarga de lanzar procesos
de:

Cargas de fichero de configuracin.


Finalizaciones de programas.
Se produjo una conexin por red
Modificacin de un fichero o directorio.
Loginwindows: proceso que carga la pantalla de login.
Ejecuta LaunchAgents y de LaunchDaemons. La principal diferencia es que los
Daemons se pueden invocar sin necesidad de haber iniciado sesin ningn usuario y
los Agents siempre actan en nombre de uno.

Loginwindows / Durante la carga


Coordina el proceso de Logging In y la sesin de usuario, llamando a otros servicios de
usuario, segn se necesite.

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.

De la misma manera si el proceso LoginWindow muere, el proceso Init, lo restaura.

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.

Limitar tambin la prioridad en el acceso al disco y a la red


Tan pronto como se utilice de nuevo la aplicacin oculta!, al instante cambiar de nuevo y
funcionar a toda velocidad.
Es tan transparente que pensaremos que haba estado funcionando de esa manera todo el
tiempo.
App Nap funciona de la misma manera con las pestaas de Safari, por lo que slo la pestaa
visible est funcionando a plena velocidad. Nap App, inclusive reduce el consumo de energa
de la CPU hasta en un 23 por ciento

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.

Grand Central Dispatch


Tecnologa desarrollada para optimizar el soporte de las aplicaciones para procesadores de
varios ncleos.
Permite a los desarrolladores crear aplicaciones que utilicen toda la potencia de los sistemas
multincleo.

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.

Mejora los tiempos de lanzamiento, evitando bloqueos y mejorando la seguridad al permitir


que cada proceso se enfoque en una tarea especfica.

Creacin y destruccin de procesos


Los sistemas operativos que son objeto de estudio tienen diferentes formas en la gestin de
procesos, por lo que en este apartado haremos una distincin entre el sistema UNIX y el
sistema Windows. El por qu se hace 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. TFC: Arquitectura de Computadores y Sistemas
Operativos
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 proceso (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.
Comparaciones entre MAC OS X y Otros SO
El caso de Mac OS X es parecido al de Windows, utilizando varias colas de procesos
cada una con un nivel de prioridad. Un hilo puede pasar de una cola a otra dependiendo
de los requerimientos. Estos niveles se pueden manejar mediante llamadas al sistema.
Los niveles son: normal, alta, Kernel y tiempo real.
El por qu se hace 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.

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.

Cuando dos o ms procesos se encuentran en un estado de estancamiento se le


denomina BLOQUEOS IRRE- VERSIBLES.

Los estados de un proceso son: LISTO, EJECUCION Y BLOQUEADO y como sub


estados podemos mencionar, inicio, espera y n.
Infografa

Das könnte Ihnen auch gefallen