Sistemas operativos modernos
1.5.8 Reciclaje de conceptos Las ciencias de la computación, al igual que muchos otros campos, reciben su empuje princi pal de la tecnología. La razón por la que los antiguos romanos no tenían automóviles no era que les gustara mucho caminar, sino que no sabían cómo construirlos. Las computadoras per sonales existen no porque millones de personas tuvieran un deseo largo tiempo reprimido de tener una computadora, sino porque ahora es posible fabricarlas de manera económica. A me nudo olvidamos lo mucho que la tecnología afecta nuestra perspectiva de los sistemas, y vale la pena meditar al respecto de vez en cuando. En particular, con frecuencia sucede que un cambio en la tecnología vuelve obsoleta algu na idea, que pronto desaparece. No obstante, otro cambio en la tecnología podría revivirla. Es to sucede sobre todo cuando el cambio tiene que ver con el desempeño relativo de diversas partes del sistema. Por ejemplo, cuando las CPUs se volvieron mucho más rápidas que las me morias, los cachés adquirieron importancia porque aceleraban el “lento” acceso a la memoria. Si algún día una tecnología de memoria nueva hace que las memorias sean mucho más rápidas que las CPUs, los cachés desaparecerán. Y si una nueva tecnología de CPU vuelve a hacer que éstas sean más rápidas que las memorias, los cachés reaparecerán. En biología, la extinción es definitiva, pero en computación a veces sólo dura unos años. Como consecuencia de esta falta de permanencia, en este libro examinaremos de vez en cuando conceptos “obsoletos”; es decir, ideas que no son óptimas con la tecnología actual. No obstante, cambios en la tecnología podrían hacer que vuelvan algunos de los supuestos “con ceptos obsoletos”. Por ello, es importante entender por qué es obsoleto un concepto y qué cam bios en el entorno podrían hacer que resurgiera. A fin de aclarar este punto, consideremos unos cuantos ejemplos. Las primeras compu tadoras tenían conjuntos de instrucciones alambradas en los circuitos. El hardware ejecutaba en forma directa las instrucciones y éstas no podían modificarse. Luego llegó la microprogra- mación, en la que un intérprete primario ejecutaba las instrucciones en software. La ejecución alambrada se volvió obsoleta. Luego se inventaron las computadoras RISC, y la microprogra- mación (es decir, la ejecución interpretada) se volvió obsoleta porque la ejecución directa era más rápida. Ahora estamos viendo un resurgimiento de la interpretación en la forma de applets de Java que se envían por Internet y se interpretan al llegar. La velocidad de ejecución no siem pre es crucial porque los retrasos en la red son tan grandes que tienden a dominar. Pero eso también podría cambiar algún día. Los primeros sistemas operativos asignaban espacio a los archivos en el disco, colocándo los en sectores contiguos, uno tras otro. Aunque este esquema era fácil de implementar, no era flexible porque cuando un archivo crecía, ya no había espacio para almacenarlo. Por ello, el concepto de archivos almacenados en sectores contiguos se desechó por ser obsoleto, hasta que llegaron los CD-ROMs. Ahí no existía el problema de que los archivos crecieran. De repente, la sencillez de la asignación contigua de espacio para los archivos pareció una brillante idea y los sistemas de archivos de CD-ROM se basan en ella. Como idea final, consideremos el enlace dinámico. El sistema MULTICS se diseñó de mo do que operara día y noche sin detenerse. Para corregir errores en el software, era necesaria una
RkJQdWJsaXNoZXIy MjI4NDcx