Sistemas operativos modernos

11.2.1 La interfaz de programación de aplicaciones W¡n32 Al igual que todos los demás sistemas operativos, Windows 2000 cuenta con un conjunto de llamadas al sistema que puede ejecutar. Sin embargo, Microsoft nunca ha publicado la lista de lla­ madas al sistema Windows, y además las cambia de una versión a la siguiente. Más bien, lo que ha hecho es definir un conjunto de llamadas a funciones denominado interfaz de programa­ ción de aplicaciones (API; Application Programming Interface) Win32, que se conoce de ma­ nera pública y está documentado en forma plena. Se trata de procedimientos de biblioteca que efectúan llamadas al sistema para realizar el trabajo o, en algunos casos, realizan el trabajo ahí mismo, en el espacio de usuarios. Las llamadas de la API Win32 existentes no cambian al cam­ biar la versión de Windows, aunque con frecuencia se añaden nuevas. Los programas binarios para Intel x 86 que se ajustan con exacfitud a la API Win32 se eje­ cutan sin necesidad de modificaciones en todas las versiones de Windows a partir de Windows 95. Como se aprecia en la figura 11-4, se necesita una biblioteca adicional para que Windows 3.x haga corresponder un subconjunto de las llamadas de la API de 32 bits con las del sistema ope­ rativo de 16 bits, pero en los demás sistemas no se requiere adaptación alguna. Cabe señalar que Windows 2000 añade una buena canfidad de funcionalidad nueva a Win32, así que cuenta con llamadas adicionales en la API que no están incluidas en versiones anteriores de Win32 y que no funcionan en versiones más anfiguas de Windows. Figura 11-4. La API W i n 3 2 permite ejecutar programas en casi todas las versiones de Windows. La filosofía de la API Win32 es completamente diferente de la filosofía de UNIX. En esta úl­ tima, todas las llamadas al sistema se conocen en forma pública y constituyen una interfaz mínima: la sola eliminación de una de ellas reduciría 1a funcionalidad del sistema operativo. La filosofía de Win32 consiste en proporcionar una interfaz exhaustiva, a menudo con dos o tres formas de hacer lo mismo, e incluir muchas funciones (es decir, procedimientos) que a todas luces no son (ni deberían ser) llamadas al sistema, como una llamada de API para copiar todo un archivo. Muchas llamadas de la API Win32 crean objetos de kemel de una especie u otra, incluidos archivos, procesos, subprocesos, canalizaciones, etc. Toda llamada que crea un objeto devuel

RkJQdWJsaXNoZXIy MjI4NDcx