Sistemas operativos modernos
Administración de procesos Llamada Descripción pid = fo rk() Crea un proceso hijo idéntico al padre pid = waitpid(pid, &statloc, options) Espera a que un hijo termine s = execve(name, argv.environp) Sustituye la imagen del núcleo de un proceso exit(status) Termina la ejecución de un proceso y devuelve el estado Administración de archivos Llamada Descripción fd = open(file,how,...) Abre un archivo para leer, escribir o ambas cosas s = close(fd) Cierra un archivo abierto n = read(fd, buffer, nbytes) Lee datos de un archivo a un búfer n = wrlte{fd, buffer, nbytes) Escribe datos de un búfer a un archivo position = lseek(fd, offset, whence) Mueve el apuntador de archivo s = stat(name, &buf) Obtiene información de estado de un archivo Administración de directorios y sistema de archivos Llamada Descripción s = mkdir(name, mode) Crea un directorio nuevo s = rmdir(name) Elimina un directorio vacío s = Iink(name1,name2) Crea un enlace a un archivo existente s = unlink(name) Desenlaza un archivo s = mount(special, name, flag) Monta un sistema de archivos s = umount{special) Desmonta un sistema de archivos Diversos Llamada Descripción s = chdir{dlrname) Cambia ei directorio de trabajo s = chmod(name,mode) Cambia los bits de protección de un archivo s = kill(pid, signal) Envía una señal a un proceso seconds = time(&seconds) Obtiene el tiempo transcurrido desde 1 de enero de 1970 Figura 1-18. Algunas de las llamadas al sistema POSIX más importantes. El código devuelto s es -1 si hubo un error. Los demás códigos devueltos son como sigue; pid es un identificador de proceso, fd es un descriptor de archivo, n es un número de bytes, position es un desplazamiento de archivo y seconds es el tiempo transcurri do. Los parámetros se explican en el texto. Como nota interesante, vale la pena señalar que la correspondencia entre las llamadas a procedimientos POSIX y las llamadas al sistema no es de una a una. El estándar POSIX espe cifica cierto número de procedimientos que el sistema debe proporcionar, pero no especifica si
RkJQdWJsaXNoZXIy MjI4NDcx