lunes, febrero 02, 2009

Llamadas al sistema

Hola chic@s,
Ya lo siento, he andado muy liado y no he tenido tiempo para nada. Mañana me quito una complicación para una buena temporada :-)

Vuelvo al tema de los sistemas operativos...
Intentaré contestar lo mejor que pueda a estas tres preguntas básicas.

¿Qué son las llamadas al sistema?
¿Qué es POSIX?
¿Qué es UNIX?

Las llamadas al sistema son la forma en las que las aplicaciones interactúan con el sistema operativo. Digamos que es el interface entre los programas y el S.O.

POSIX significa "Portable Operating System Interface". Richard Stallman propuso el nombre. Hoy en día es un estándar internacional ISO ISO/IEC 9945-1.
El estándar se desarrolló por parte de la IEEE para lograr que los programas pudieran ejecutarse fácilmente (portarse) en los diferentes UNIX. Es un conjunto mínimo común de llamadas al sistema.

Minix3, HP-UX, Solaris, MacOSX, AIX, BSD/OS, etc. etc. cumplen alguna de las versiones POSIX. Es curioso que haya windows POSIX, y linux no certificados POSIX. No hay que darle demasiada importancia a la falta de certificación ya que hay un tema de pasta por detrás.

Para definir UNIX vamos a dejar de lado los temas legales relacionados con marcas registradas (propiedad de "The Open Group"). Solo decir que IEEE certifica sistemas UNIX en base al cumplimiento de POSIX, y que existe otra certificación que por resultar más barata que se ha convertido en el estándar de hecho. Si quieres saber más...http://es.wikipedia.org/wiki/Single_UNIX_Specification

Ahora si, entremos un poco en materia:

MINIX3 tiene 53 llamadas al sistema principales. Nos dice Tanenbaum que hay unas pocas más, pero que son muy especiales.

Es importante un matiz. El estándar POSIX especifica un número de procedimientos que el sistema debe contener, pero no quiere decir que todas sean llamadas al sistema. En el caso de MINIX hay procedimientos POSIX que se soportan en forma de librerías. También ocurre que algunas llamadas del sistema son simples variaciones de otras y se implementan con una sola llamada al sistema.

Mañana a ver si empezamos a desgranar la llamada más bonita de todas: fork.

Saludos.

No hay comentarios: