stringtranslate.com

Sistema de archivos instalable

El sistema de archivos instalable ( IFS ) es una API de sistema de archivos en MS-DOS / PC DOS 4.x, IBM OS/2 y Microsoft Windows que permite al sistema operativo reconocer y cargar controladores para sistemas de archivos .

Historia

Cuando IBM y Microsoft estaban codesarrollando OS/2, se dieron cuenta de que el sistema de archivos FAT no ofrecía algunas de las características que requerirían los sistemas operativos modernos, y Microsoft comenzó a desarrollar el sistema de archivos de alto rendimiento (HPFS), con nombre en código Pinball .

En lugar de codificarlo dentro del kernel, como lo era FAT, Microsoft desarrolló una API de sistema de archivos "basada en controladores" que podría permitirles a ellos y a otros desarrolladores agregar nuevos sistemas de archivos al kernel sin necesidad de modificarlo.

Cuando Microsoft dejó de trabajar en OS/2, IBM continuó usando la interfaz IFS y Microsoft implementó una similar en Windows NT.

Implementaciones

IFS en DOS 4.x

IFS en OS/2

El IFS proporcionó una interfaz básica y poderosa para programar sistemas de archivos. Fue introducido en 1989 en OS/2 1.20, junto con el sistema de archivos HPFS.

Los controladores del sistema de archivos se ejecutan en el espacio del kernel ( anillo 0 ) y se dividen en cuatro partes principales: microIFS, miniIFS, IFS y ayudantes.

Sólo se requiere el IFS y el código del sistema de archivos y se carga mediante una instrucción " IFS =" en el archivo CONFIG.SYS . Es una biblioteca NE de 16 bits cargada dinámicamente . No importa si es un OS/2 de 32 bits (2.0 y posterior), el IFS siempre es de 16 bits (aunque extraoficialmente puedes crear un IFS de 32 bits).

El microIFS es un fragmento de código que carga en la memoria el kernel y el miniIFS y salta a la ejecución del kernel. Generalmente se encuentra en la parte de arranque del sistema de archivos.

El miniIFS es un fragmento de código que el kernel llama para cargar la primera declaración IFS que aparece en el archivo CONFIG.SYS, por lo que la primera declaración IFS debe ser el sistema de archivos de arranque para que el sistema pueda arrancar.

Los asistentes son de 16 bits (para OS/2 1.x) o 32 bits (para OS/2 2.x y superiores), se ejecutan en el espacio de usuario ( anillo 3 ) y contienen el código utilizado para el mantenimiento típico del sistema de archivos. , y son llamados por CHKDSKy FORMATutilidades.

Este esquema de cuatro piezas permitió a los desarrolladores agregar dinámicamente un nuevo sistema de archivos de arranque, como lo demostró el controlador ext2 para OS/2.

El controlador del sistema de archivos de CD-ROM ( ISO 9660 ) se agregó en OS/2 2.0, se agregó UDF en OS/2 4.0 y JFS se agregó en OS/2 4.5. ArcaOS , el último paquete de OS/2, tiene varios controladores de sistemas de archivos disponibles, incluido FAT32. [1] También había un IFS HPFS oficial de 32 bits, llamado HPFS386 que mejoraba el rendimiento y agregaba algunas características, como caché de tamaño variable y listas de control de acceso , y estaba disponible solo en ciertas ediciones de servidor OS/2. El sistema de archivos FAT nunca se eliminó del kernel y oficialmente nunca fue un IFS, aunque hay FAT IFS que agregaron características como nombres de archivos largos (LFN), compatibilidad con FAT32 , etc.

Los protocolos de intercambio de archivos de red como NFS y SMB también se implementan mediante IFS, y la interfaz IFS nunca cambió.

IFS en Windows 3.11 y 9x

IFSHLP.SYS (el asistente del sistema de archivos instalable ) es un controlador de dispositivo MS-DOS que se lanzó por primera vez como parte de Microsoft Windows para trabajo en grupo 3.11. Permite el acceso a archivos nativos de 32 bits en el modo mejorado de Windows 386 al omitir la API de DOS de 16 bits y garantizar que ningún otro controlador en modo real intercepte las llamadas INT 21h .

La contraparte en modo protegido de IFSHLP.SYS es IFSMGR.386 en Windows 3.11 e IFSMGR.VXD en Windows 95 y Windows 98. [2] [3]

IFS en Windows NT

La API IFS es parte del kit de controladores de Windows .

Cuando Microsoft dejó de desarrollar OS/2 y se concentró en lo que entonces se llamaba OS/2 NT, se llevó consigo las ideas de IFS, junto con el sistema de archivos HPFS.

En lugar de ser un esquema de cuatro piezas, NT IFS fue rediseñado en un esquema de dos piezas. microIFS y miniIFS fueron eliminados del esquema. IFS y los asistentes siguen siendo los mismos, pero más tarde, en Windows NT 4.0, se agregó un asistente de desfragmentación (DEFRAG). El NTLDR original de Microsoft fue codificado para cargar el kernel NT desde FAT, HPFS o NTFS , pero las versiones posteriores dejaron de ser compatibles con HPFS. Todos los controladores y ayudantes se convirtieron en ejecutables de PE de 32 bits . El sistema de archivos FAT se trasladó del Kernel a un IFS y se optimizó en gran medida para el rendimiento, aprovechando las capacidades de procesamiento de 32 bits (llamado FASTFAT ).

El Windows NT 3.1 original incorporaba FAT, HPFS (Pinball) y los controladores NTFS recién creados, junto con un controlador de sistema de archivos de CD-ROM nuevo y mejorado que incorporaba nombres de archivos largos utilizando el sistema de archivos Microsoft Joliet .

Windows NT 3.51 agregó compresión por archivo a NTFS y a la interfaz IFS. En Windows NT 4.0 se eliminó HPFS. En Windows 2000, FASTFAT se actualizó para admitir FAT32 y se agregó UDF .

Windows 2000 modificó la interfaz IFS para agregar cifrado por archivo.

Los protocolos de intercambio de archivos en red y los antivirus también se implementan mediante controladores de 'filtro de sistema de archivos' IFS que interceptan las operaciones de E/S de archivos. [4]

Apple comenzó a incluir controladores HFS+ de sólo lectura en la versión de Boot Camp [5] de Mac OS X 10.6 para su uso en Windows XP , Windows Vista y Windows 7 .

Otras lecturas

Ver también

Referencias

  1. ^ "Controlador del sistema de archivos instalable FAT32" . Consultado el 4 de septiembre de 2020 .
  2. ^ Peter HS Madsen. "Guía de CONFIG.SYS y AUTOEXEC.BAT".
  3. ^ Resultados de búsqueda de Google Books para IFSHLP . Consultado el 13 de abril de 2011 .
  4. ^ "Acerca de los controladores de filtro del sistema de archivos: controladores de Windows". 15 de diciembre de 2021.
  5. ^ "El Boot Camp de Snow Leopard incluye controladores HFS + Windows". 6 de mayo de 2009 . Consultado el 14 de septiembre de 2012 .

enlaces externos

ext2/ext3/ext4

ReiserFS

HFS

OS/2

Otro