Sistemas operativos modernos

Luego apareció UNIX, que va mucho más lejos al utilizar el modelo de “todo es un archi­ vo”. Con este paradigma, todos los dispositivos de E/S se tratan como archivos y pueden abrir­ se y manipularse como si fueran archivos ordinarios. Las instrucciones en C fd1 = open{“file1”, O .RDW R ); fd2 = open{7dev/tty”, 0 _ R DW R ) ' abren un verdadero archivo de disco y la termina! del usuario. Las siguientes instrucciones pue­ den utilizar f d l y fd2 para leer de ellos y escribir en ellos, respectivamente. A partir de ese pun­ to, no hay diferencia entre el acceso al archivo y a la terminal, excepto que en la terminal no se permiten búsquedas. UNIX no sólo unifica los archivos y los dispositivos de E/S, sino que también permite acce­ so a otros procesos a través de canalizaciones como si fueran archivos. Además, cuando se ma­ nejan archivos con correspondencia en memoria, un proceso puede tener acceso a su propia memoria virtual como si fuera un archivo. Por úlfimo, en las versiones de UNIX que manejan el sistema de archivos /proc, la instrucción en C fd3=open(7proc/501”,0_RDWR): permite al proceso (tratar de) tener acceso a la memoria del proceso 501 para lectura y escri­ tura empleando el descriptor de archivo/<¿5, algo que puede ser úfil en el caso de un depura­ dor, por ejemplo. Windows 2000 va más lejos aún y trata de que todo se vea como un objeto. Una vez que un proceso ha obtenido un idenfificador válido para un archivo, proceso, semáforo, buzón u otro objeto del kernel, puede realizar operaciones con él. Este paradigma es todavía más gene­ ral que el de UNIX y mucho más general que el de FORTRAN. También existen paradigmas unificadores en otros contextos. Vale la pena mencionar uno de ellos aquí: Web. El paradigma en que se basa Web es que el ciberespacio está lleno de docu­ mentos, cada uno de los cuales fiene un URL. Al teclear un URL o hacer clic en un elemento que contenga un URL asociado, se obfiene el documento. En realidad, muchos “documentos” no son tales, sino que un programa o secuencia de comandos de shell los genera cuando llega una soli­ citud. Por ejemplo, cuando un usuario pide a una tienda en línea una lista de los CDs de un artis­ ta específico, un programa genera el documento sobre la marcha; no existía antes de que se hiciera la solicitud. Ya hemos visto cuatro casos: todo es una cinta, archivo, objeto o documento. En los cua­ tro casos, la intención es unificar los datos, dispositivos y demás recursos para que sea más fá­ cil manejarlos. Todo sistema operativo debe tener un paradigma de datos que lo unifique. 12.2.3 La interfaz de llamadas al sistema Si creemos en el precepto de mecanismo mínimo de Corbató, el sistema operafivo debería ofre­ cer el menor número posible de llamadas al sistema, y cada una deberá ser lo más sencilla po­ sible (pero no más sencilla). Un paradigma de datos unificador puede ser de gran ayuda aquí.

RkJQdWJsaXNoZXIy MjI4NDcx