Sistemas operativos modernos
No podemos siquiera mencionar aquí todas las llamadas de la API Win32, por lo que nos limitaremos a las que corresponden aproximadamente a la funcionalidad de las llamadas de UNIX que enumeramos en la figura 1-18. Las presentamos en la figura 1-23. UNIX Win32 Descripción fork CreateProcess Crea un proceso nuevo waitpid WaitForSingleObject Puede esperar a que un proceso termine execve (ninguna) CreateProcess = fork + execve exit ExitProcess Termina la ejecución open CreateFile Crea un archivo o abre uno existente close CloseHandle Cierra un archivo read ReadFile Lee datos de un archivo write WriteFile Escribe datos en un archivo Iseek SetFilePointer Mueve el apuntador de archivo stat GetFileAttributesEx Obtiene diversos atributos de archivo mkdir CreateDirectory Crea un directorio nuevo rmdir RemoveDirectory Elimina un directorio vacío link (ninguna) Win32 no maneja enlaces unlink DeleteFile Destruye un archivo existente mount (ninguna) Win32 no maneja montajes umount (ninguna) Win32 no maneja montajes chdir SetCurrentDirectory Cambia el directorio de trabajo actual chmod (ninguna) Win32 no maneja seguridad (aunque NT sí) kill (ninguna) Win32 no maneja señales time GetLocalTime Obtiene la hora actual Figura 1-23. Llamadas de la API Win32 que corresponden aproximadamente a las llamadas de UNIX de la figura 1-18. Repasemos de manera breve la lista de la figura 1-23. CreateProcess crea un proceso nue vo, realizando la labor combinada de fork y execve en UNIX. Tiene muchos parámetros que especifican las propiedades del proceso recién creado. Windows no tiene una jerarquía de pro cesos como UNIX, así que no existe el concepto de proceso padre y proceso hijo. Una vez crea do un proceso, el creador y el creado son iguales. WaitForSingleObject sirve para esperar un evento, y existen muchos que pueden esperarse. Si el parámetro especifica un proceso, el invo cador espera hasta que el proceso especificado termina, lo cual se hace con ExitProcess. Las seis llamadas que siguen operan con archivos y son funcionalmente similares a sus contrapartes en UNIX, aunque difieren en sus parámetros y detalles. De cualquier modo, es po sible abrir, cerrar, leer y escribir archivos de forma similar a como se hace en UNIX. Las lla madas SetFilePointer y GetFIIeAttributesEx establecen la posición en el archivo y obtienen algunos de sus atributos.
RkJQdWJsaXNoZXIy MjI4NDcx