ESTRUCTURA DE OS/2

(Sistema de ficheros y Subsistemas)

Vamos a empezar por ver como acceder al disco, pantalla y teclado en OS/2. Si bien es cierto que todos los lenguajes de programación ofrecen instrucciones estandar (y sobre todo, portables) para acceder a estos dispositivos, el uso de las funciones específicas que ofrece OS/2 nos permite conseguir mejores rendimientos. Un ejemplo es la lectura de datos desde un fichero. Si usamos las funciones estandar de C, por ejemplo, leeremos datos de un en un byte; dado que, al compilar, estamos haciendo una llamada al sistema en sí, en principio sería lo mismo usar estas funciones que las de OS/2; sin embargo, OS/2 permite leer multiples bytes de una sola vez. La ventaja es que para cada lectura hay que llamar al núcleo de OS/2, lo cual consume mucho tiempo. Si tenemos que hacer 100 llamadas estandar para leer 100 bytes, será un proceso bastante lento. Pero si usamos una llamada de OS/2 para leer los 100 bytes de una sola vez, al haber una sola transición programa-nucleo-programa, la lectura será notablemente más rápida. Es imposible acelerar esa transición, pues no es problema de OS/2, sino de la propia arquitectura Intel.

Implementación del sistema de ficheros de OS/2

En este gráfico vemos como está construido el acceso a los dispositivos en OS/2.

En el esquema, vemos que la aplicación se comunica con el Sistema de Ficheros de OS/2, que forma parte del núcleo, y éste determina a quien tiene que enviar o de quien debe leer los datos. Si el programa quiere acceder a la pantalla, el Sistema de Ficheros envía los caracteres al Subsistema de Video (VIO), que es la parte encargada de controlar la totalidad de accesos a la pantalla. Lo mismo si se trata del teclado, el ratón o un fichero de disco.

La razón de usar el Sistema de Ficheros para acceder tanto a los archivos de disco como a los dispositivos, es que permite que el programa no se tenga que preocupar de la estructura de estos: cualquier entrada o salida será tratada como un conjunto de caracteres en serie. Esta independencia de estructura es cómoda para algunas aplicaciones, pero en otras puede ser mejor poder acceder directamente a cada dispositivo, normalmente por razones de velocidad. Esa es la razón de que OS/2 permita a las aplicaciones acceder directamente a los Subsistemas de Video (VIO), teclado (KBD) y ratón (MOU). A través de estos, podemos por ejemplo hacer funciones de Scroll en la pantalla, conocer la posición del ratón, etc.

Podemos comparar los Subsistemas de OS/2 con la BIOS del ordenador, si bien estos son más completos que aquella en muchas funciones, y sobre todo mucho más rápidos.

Pagina anterior  Indice  Pagina siguiente