Your SlideShare is downloading. ×
Práctica deProcesosAdministración de SistemasOperativosFrancisco Javier Gavilán Escriche 2ºA
Práctica de Procesos                                                                             Francisco Javier Gavilán ...
Práctica de Procesos                                          Francisco Javier Gavilán EscricheObjetivos1. Estudia la orde...
Práctica de Procesos                                        Francisco Javier Gavilán Escriche5. Estudia el uso que se hace...
Práctica de Procesos                                          Francisco Javier Gavilán EscrichePunto 1Estudia la orden upt...
Práctica de Procesos                                      Francisco Javier Gavilán EscricheAhora hacemos un ps la para ver...
Práctica de Procesos                                          Francisco Javier Gavilán EscrichePunto 3En muchos casos nos ...
Práctica de Procesos                                        Francisco Javier Gavilán EscrichePrimero lanzamos el comando t...
Práctica de Procesos                                          Francisco Javier Gavilán Escriche   Observa si mientras est...
Práctica de Procesos                                           Francisco Javier Gavilán EscricheAhora establecemos para qu...
Práctica de Procesos                                         Francisco Javier Gavilán Escriche   Observa que la CPU se le...
Práctica de Procesos                                            Francisco Javier Gavilán EscrichePunto 5Estudia el uso que...
Práctica de Procesos                                         Francisco Javier Gavilán EscricheDespués:Punto 6Prueba las op...
Práctica de Procesos                                            Francisco Javier Gavilán EscrichePunto 7Ordenes: at, atq, ...
Práctica de Procesos                                           Francisco Javier Gavilán Escriche   Utiliza la orden atq p...
Upcoming SlideShare
Loading in...5
×

Practica de procesos en Linux

4,957

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
4,957
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
179
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Practica de procesos en Linux"

  1. 1. Práctica deProcesosAdministración de SistemasOperativosFrancisco Javier Gavilán Escriche 2ºA
  2. 2. Práctica de Procesos Francisco Javier Gavilán EscricheIndiceObjetivos..........................................................................................................................................2Punto 1 .............................................................................................................................................4Punto 2 .............................................................................................................................................4Punto 3 .............................................................................................................................................6Punto 4 .............................................................................................................................................6Punto 5 ...........................................................................................................................................11Punto 6 ...........................................................................................................................................12Punto 7 ...........................................................................................................................................13Punto 8 ...........................................................................................................................................14 1
  3. 3. Práctica de Procesos Francisco Javier Gavilán EscricheObjetivos1. Estudia la orden uptime:  ¿Cuánto tiempo lleva en marcha el sistema?  ¿Cuántos usuarios hay trabajando?  ¿Qué orden ofrece en su cabecera la misma información que uptime?2. La orden pstree muestra el árbol de procesos que hay en ejecución. Compruebahaciendo uso de la orden ps -la y de los valores “PID” y “PPID” mostrados para cadaproceso, que efectivamente los procesos son padre e hijo.3. En muchos casos nos interesará “cortar columnas”. Recuerda el uso de tr y cut. Porejemplo, ¿cómo funciona esta instrucción?ps aux | tr -s ’ ’ | cut -f 2,11 -d ’ ’4. Crea el fichero /tmp/bucle con el siguiente contenido:#!/bin/bashecho ’nada’ > /dev/nullexec /tmp/bucle  Ejecuta la orden top en una terminal y comprueba el estado del sistema, a continuación lanza /tmp/bucle en otra. Observa cómo cambia el estado del sistema al lanzar el script. En una tercera terminal, comprueba con ps los procesos en ejecución.  Usando la combinación de teclas “Control-Z” para el proceso bucle. Una vez parado comprueba que la información mostrada por top va cambiando, hasta llegar un momento en el que no muestra información sobre dicho proceso. Fíjate que ha aumentado el número de procesos parados.  Reinicia el proceso con la orden fg y comprueba que vuelve a aparecer la información sobre el proceso.  Observa si mientras está en ejecución ese proceso cambia la carga media del sistema.  ¿Por qué aparece siempre el proceso bucle con el mismo PID si se lanza a sí mismo una y otra vez durante su ejecución?  Cambia la velocidad de referesco de top a 2s.  Desde el top, cambia la prioridad del proceso, dándole un valor menor, por ejemplo 10.  Usando la orden nice lanza otro proceso bucle con la prioridad de 5.  Observa que la CPU se le asignará más al segundo bucle lanzado, que tiene más prioridad, que al primero que se ejecutó, que tiene menos prioridad.  Asigna mediante renice una prioridad de 19 al bucle que lanzaste con prioridad 5. ¿Cómo afecta esto a la ejecución de los dos procesos?  Desde el top mata el bucle con prioridad 10. Fíjate que ahora, a pesar de que el que queda tiene prioridad 19, se le asigna más de la CPU que antes.  Haciendo uso de la orden kill, para el proceso bucle que aún queda en ejecución. Despu s usando tambi n kill rean dalo y finalmente elim nalo. 2
  4. 4. Práctica de Procesos Francisco Javier Gavilán Escriche5. Estudia el uso que se hace de la CPU, con mpstat, y el uso de memoria, con vmstat, queestán haciendo en este momento los procesos en ejecución. Para que el sistema tengatareas a realizar y acceso al disco al mismo tiempo, ejecuta la siguiente orden:find / -type f -exec cat {} > /dev/null ;6. Prueba las opciones de ulimit. Ten en cuenta que una vez establecido un límite conulimit no es posible establecer un nuevo límite mejor, para cambiar a un valor mejor esnecesario finalizar ese intérprete de órdenes. Recuerda que los valores establecidos sonpor intérprete de órdenes.  Limita el número de ficheros abiertos a 2. A continuación ejecuta la orden “ls”. ¿Qué está sucediendo?  Limita el tamaño del fichero core a 2K.  Limita el número de procesos en ejecución a 1. Ejecuta a continuación una orden, por ejemplo, ps. ¿Qué está sucediendo?  ¿Qué podemos hacer para que tengan efecto siempre sobre cierto usuario? (Pista: ficheros profile).7. Ordenes: at, atq, atrm. (Para poder recibir un correo cuando una orden programada conat se ejecute es necesario que esté en ejecución el demonio sendmail).  Si el demonio atd no está en ejecución, lánzalo para poder hacer este ejercicio.  Programa con la orden at un “ls /” dentro de unos minutos. Comprueba cómo te avisa de que la orden ha sido ejecutada.  Programa con la orden at un “ls /tmp > $HOME/salidatmp” dentro de unos minutos. Comprueba cómo te avisa de que la orden ha sido ejecutada.  Utiliza la orden atq para averiguar que hay en la cola y atrm para eliminar trabajos que hayan sido encolados.8. Con la orden free averigua el estado de la memoria principal y de intercambio delsistema en este momento. 3
  5. 5. Práctica de Procesos Francisco Javier Gavilán EscrichePunto 1Estudia la orden uptime: ¿Cuánto tiempo lleva en marcha el sistema? Lleva conectado 23 minutos al sistema ¿Cuántos usuarios hay trabajando? Como se puede ver en la imagen están trabajando 2 usuarios, aunque con la orden who podríamos concretar quienes son. ¿Qué orden ofrece en su cabecera la misma información que uptime? El comando TOPAunque también con la orden w puede visualizarse en pantalla el tiempo que lleva cada usuarioconectado al sistema.Punto 2La orden pstree muestra el árbol de procesos que hay en ejecución. Comprueba haciendo uso dela orden ps la y de los valores “PID” y “PPID” mostrados para cada proceso, que efectivamentelos procesos son padre e hijo.En un terminal lanzado un gedit con “gedit &” y me indica lo siguiente: 4
  6. 6. Práctica de Procesos Francisco Javier Gavilán EscricheAhora hacemos un ps la para ver los procesos que están en marcha en el sistema y como vemospor ejemplo el PID de gedit es 1859 y PPID (numero que hace mención a su proceso padre) es1806, si buscamos cual es en el sistema su proceso padre vemos que bash tiene el PID 1806.Ahora mediante un pstree en otro terminal comprobamos que el proceso bash es el padre delproceso gedit 5
  7. 7. Práctica de Procesos Francisco Javier Gavilán EscrichePunto 3En muchos casos nos interesará “cortar columnas”. Recuerda el uso de tr y cut. Por ejemplo,¿cómo funciona esta instrucción? ps aux | tr -s ‟ ‟ | cut -f 2,11 -d ‟ ‟Ps aux  Listarte los procesos de todos los usuariosTr –s „ „  elimina los espacios en blanco duplicadosCut –f  Corta la información por las columnas que nos interesa obtener informaciónPunto 4Crea el fichero /tmp/bucle con el siguiente contenido:#!/bin/bashecho ‟nada‟ > /dev/nullexec /tmp/bucle Ejecuta la orden top en una terminal y comprueba el estado del sistema, a continuación lanza /tmp/bucle en otra. Observa cómo cambia el estado del sistema al lanzar el script. En una tercera terminal, comprueba con ps los procesos en ejecución. 6
  8. 8. Práctica de Procesos Francisco Javier Gavilán EscrichePrimero lanzamos el comando top, después vamos a lanzar el proceso con un sh /tmp/bucle (sino funciona dar permisos a la carpeta tmp), acto seguido volvemos a consultar el top y vemoscomo se ha ejecutado el bucle y está ejecutándose como un proceso. Usando la combinación de teclas “Control-Z” para el proceso bucle. Una vez parado comprueba que la información mostrada por top va cambiando, hasta llegar un momento en el que no muestra información sobre dicho proceso. Fíjate que ha aumentado el número de procesos parados.Una vez que paramos con CTRL+Z se detiene el bucle y aumenta el número de procesos parados Reinicia el proceso con la orden fg y comprueba que vuelve a aparecer la información sobre el proceso. 7
  9. 9. Práctica de Procesos Francisco Javier Gavilán Escriche Observa si mientras está en ejecución ese proceso cambia la carga media del sistema.Si aumenta ¿Por qué aparece siempre el proceso bucle con el mismo PID si se lanza a sí mismo una y otra vez durante su ejecución?Aparece siempre con el mismo PID debido a que lo que hacemos es parar el proceso y nomatarlo. Cambia la velocidad de refresco de top a 2s.Cuando estemos ejecutando el comando top le damos a la tecla d y acto seguido le metemos eltiempo de refresco que serán 2 segundos. Desde el top, cambia la prioridad del proceso, dándole un valor menor, por ejemplo 10.Ejecutando el top le damos a la r y metemos el PID del proceso (en este caso el PIDperteneciente al bucle anterior es el 11403) 8
  10. 10. Práctica de Procesos Francisco Javier Gavilán EscricheAhora establecemos para que tenga prioridad 10Y más tarde vemos como el NI ha aumentado a 10 Usando la orden nice lanza otro proceso bucle con la prioridad de 5.En un terminal introducimos la siguiente orden: 9
  11. 11. Práctica de Procesos Francisco Javier Gavilán Escriche Observa que la CPU se le asignará más al segundo bucle lanzado, que tiene más prioridad, que al primero que se ejecutó, que tiene menos prioridad.En el comando top ejecutado anteriormente se puede observar cómo se ha creado un nuevoproceso llamado bucle con el NI a 5 Asigna mediante renice una prioridad de 19 al bucle que lanzaste con prioridad 5. ¿Cómo afecta esto a la ejecución de los dos procesos? Desde el top mata el bucle con prioridad 10. Fíjate que ahora, a pesar de que el que queda tiene prioridad 19, se le asigna más de la CPU que antes.En la pantalla con el comando top ejecutado le damos a la k y nos pedirá el número de PID quequeremos matar, justo después le metemos el número 15 para que mate el proceso y listo. Haciendo uso de la orden kill, para el proceso bucle que aún queda en ejecución. Después, usando tambi n kill rean dalo y, finalmente, elim nalo.Kill -19  Para parar el procesoKill -18  Para reanudar el procesoPosteriormente con un Kill -9 matamos el proceso. 10
  12. 12. Práctica de Procesos Francisco Javier Gavilán EscrichePunto 5Estudia el uso que se hace de la CPU, con mpstat, y el uso de memoria, con vmstat, que estánhaciendo en este momento los procesos en ejecución. Para que el sistema tenga tareas a realizar yacceso al disco al mismo tiempo, ejecuta la siguiente orden: find / -type f -exec cat {} > /dev/null;Primero tenemos que instalar sisstatAhora lo que vamos a hacer es un mpstat y vmstat del sistema antes de ejecutar la orden delenunciado y otro justamente después para ver los cambios que se han producido.Antes: 11
  13. 13. Práctica de Procesos Francisco Javier Gavilán EscricheDespués:Punto 6Prueba las opciones de ulimit. Ten en cuenta que una vez establecido un límite con ulimit no esposible establecer un nuevo límite mejor, para cambiar a un valor mejor es necesario finalizarese intérprete de órdenes. Recuerda que los valores establecidos son por intérprete de órdenes. Limita el n mero de ficheros abiertos a 2. A continuación ejecuta la orden “ls”. ¿Qu está sucediendo? Limita el tamaño del fichero core a 2K.ulimit -c 2 nombre_del_archivo_core Limita el número de procesos en ejecución a 1. Ejecuta a continuación una orden, por ejemplo, ps. ¿Qué está sucediendo?Pues que limitamos el número de procesos abiertos a 1 mediante la orden ulimit –n 1 ¿Qué podemos hacer para que tengan efecto siempre sobre cierto usuario? (Pista: ficheros profile).Mediante el uso de un script en el .profile del usuario que queramos le indicaremos mediante unulimit el número de procesos que queramos tener abiertos simultáneamente. 12
  14. 14. Práctica de Procesos Francisco Javier Gavilán EscrichePunto 7Ordenes: at, atq, atrm. (Para poder recibir un correo cuando una orden programada con at seejecute es necesario que esté en ejecución el demonio sendmail). Si el demonio atd no está en ejecución, lánzalo para poder hacer este ejercicio. Programa con la orden at un “ls /” dentro de unos minutos. Comprueba cómo te avisa de que la orden ha sido ejecutada.Una vez tengamos la orden ls / puesta en el terminal AT tendremos que darle a CTRL+D Programa con la orden at un “ls /tmp > $HOME/salidatmp” dentro de unos minutos. Comprueba cómo te avisa de que la orden ha sido ejecutada.Comprobación que se ha creado el archivo salidatmp: 13
  15. 15. Práctica de Procesos Francisco Javier Gavilán Escriche Utiliza la orden atq para averiguar que hay en la cola y atrm para eliminar trabajos que hayan sido encolados.Punto 8Con la orden free averigua el estado de la memoria principal y de intercambio del sistema en estemomento. 14

×