Abelia Process Manager
July 6, 2008Habiendo terminado mi curso de Sistemas Operativos con la Profesora Karla Reyes, me dispongo a publicar para mis lectores y demás, el programa que hice para fin de ciclo: Un Administrador de Procesos para Cygwin.
Cygwin es una capa de emulación entre Windows y “POSIX” (Entre comillas lo pongo porque sigue siendo Windows), para poder correr aplicaciones escritas para sistemas operativos compatibles con esa norma.
Dado el carácter “Linux” de mi programa, decidí trabajarlo con la consola y usando las ncurses como librerías para los menúes “gráficos” de mi aplicación. Al programar descarté a C por los problemas que me daba, y finalmente opté de nuevo por Python.
Decidí que mi programa tendría 3 partes: Un Menú, un creador de procesos y un eliminador de los mismos. Sin embargo deseaba algo más original que el simple “Menú”, “Creador” y “Administrador”. Buscaba nombres originales para mis componentes.
Para los interesados en la programación, los procesos bajo Cygwin se alojan en el directorio /proc (Al igual que en Linux), leyéndose algunos archivos para obtener información de los procesos. Pueden leer un buen recurso aquí. Para matar procesos se usa el comando kill() y para crearlos fork() y execv(), todos ellos definidos en el módulo OS de Python.
En esos días de programación terminaba de ver la serie Ima soko ni Iru Boku (Ahora y entonces, aquí y ahora, en japonés) en la que el argumento principal es el horror de la guerra infantil. De esta serie me llamaron la atención un par de personajes: Abelia, una comandante muy estricta, Shu, un chico que se negaba rotundamente a las acciones militares y Tabool, un sujeto cuyo único deseo era escalar en el poder generado por la guerra.
Como pueden notar, mi título ya hacía referencia a uno de esos personajes, es decir que decidí llamar a mis componentes usando a los citados personajes. El asunto quedó así:
-
Menu Principal (Abelia Process Manager): Es el componente principal que llama a los otros dos.
-
Creador de Procesos (Shu’s Process Creator): Creador de Procesos. El nombre Shu también es un acrónimo de Shell Utility.
-
Administrador de Procesos (Tabool Process Manager): Administrador de procesos. Permite la eliminación de procesos.
Decir que al exponer este programa y al explicar los nombres me llevé algunas miradas extrañas de mis compañeros e incluso de mi profesora, no acostumbrados a estos extraños asuntos (Para ellos, del Anime)
Los interesados en ver el código fuente, pueden obtenerlo aquí. Todo el código está licenciado bajo Licencia MIT. Debo advertir que el código tiene algunos errores aún y sólo se ejecuta en Cygwin, debido a unas “características” propias de la emulación. Si se animan a portarlo a Linux completamente les estaría muy agradecido, siempre y cuando respeten el nombre de los programas.
Podría decirse que ese fue mi otaku-trabajo del ciclo. Dado que la reacción no fue del todo desfavorable, quizá planee otra referencia en algún trabajo futuro.






Shu, tambien se llama el usuario de sombras de Blue Dragon
Comment by renato — July 10, 2008 @ 9:37 am