FreeDOS help system (hhstndrd 1.0.8 es)[ndis_ins]

Redes de FreeDOS - Instalación de controlador NDIS

Información general

(Imagen: Información general de la arquitectura de NDIS) Los controladores basados en la "Network Driver Interface Specification" (NDIS) son los predeterminados en el mundo de Windows. La versión más reciente es NDIS 6, que se utiliza en Windows Vista. Windows 98 utiliza NDIS 5, Windows 95 llegó con NDIS 3.1. En DOS usted tiene que utilizar la NDIS2 controlador en modo real.

Donde encontrarlos

Lo más probable es que existe un controlador NDIS para su tarjeta de red. Busque un directorio llamado "NDIS2" en los archivos de instalación de tarjetas. Si usted no puede encontrar un controlador, echar un vistazo a este sitio (ver: http://drivesnapshot.de/en/ makebootdisk.htm (*01)). El final del nombre del controlador tiene que ser *. DOS, así que, por ejemplo, el conductor de la 3Com 3C574 PC-Card se llama "EL3C574.DOS".

Cómo funcionan

En el lenguaje de la arquitectura NDIS estos controladores son llamados "Media Access Control" (MAC) controladores. El controlador MAC es sólo un componente de la arquitectura NDIS como se puede ver en la figura anterior. De acuerdo con la documentación NDIS 2.1 (véase: http://www.ndis.com/faq/ndis201.txt (*02)) NDIS parece funcionar así: * Comandos en FDCONFIG.SYS (FreeDOS) o CONFIG.SYS (otra DOS) se cargan los controladores de protocolo administrador PROTMAN.DOS, el controlador de MAC y el controlador de protocolo. Esto se puede hacer por las líneas para cada uno de estos controladores o iniciando el controlador "Sistema de archivos instalable Helper", que se carga por el "DEVICEHIGH = Ifshlp.sys" y se inicia el Administrador de protocolos, el MAC y los controladores de protocolo de acuerdo al PROTOCOL.INI. * El Administrador de protocolos lee la configuración de PROTOCOL.INI y los pone a disposición para el controlador y el protocolo controlador MAC que se cargan después de él. * El controlador MAC y la carga controlador de protocolo y configurar themselve acuerdo con esa información. Se identifican con el Administrador de protocolos. * Antes el controlador MAC y el controlador de protocolo se pueden comunicar, tienen que ser unidas entre sí, de modo que puedan acceder a unos al otro "puntos de entrada" (puertos de comunicación). Este proceso de vinculación es controlada por el Administrador de protocolos basados en la información en PROTOCOL.INI. * La secuencia de unión puede ser desencadenada por NET.EXE o NETBIND.COM (que se puede hacer en archivo AUTOEXEC.BAT). * El Administrador de protocolos (PROTMAN.DOS) luego inicia el residente en memoria (Terminate and Stay Resident - TSR) programa PROTMAN.EXE para ejecutar el comando bind y controlar el orden correcto de controladores. * Después de que la unión ocurre, el MAC y el controlador de protocolo se comunican directamente entre sí. El Administrador de protocolos no está involucrado en este proceso de comunicación por más tiempo, por lo que NETBIND.COM libera la mayor parte de la memoria previamente reservada por el Administrador de protocolos. La configuración de NDIS bajo DOS ha cambiado a través del tiempo con diferentes versiones del paquete. Algunos consejos sobre las diferencias se pueden encontrar aquí (ver: http://www.yale.edu/ pclt/WINWORLD/NDIS.HTM (*03)). En este documento, estoy asumiendo que utilizamos los archivos NDIS enviados con MS client 3.0. Como esta sección se trata de obtener las aplicaciones TCP/IP basados en controlador de paquetes en marcha y funcionando con DOS no vamos a entrar en detalles acerca de MS client aquí, esto ya está explicado en otra parte.

Archivos adicionales necesarios

¿Cómo podemos utilizar el controlador NDIS2 MAC que viene con nuesta targeta de red con interfaz de red TCP/IP? Como hemos aprendido de la descripción anterior, necesitamos algunos archivos más. Estos son: * El Director de protocolo ("PROTMAN.DOS" y "PROTMAN.EXE") * La utilidad de vinculación ("NETBIND.COM") Estos archivos son parte del cliente MS 3.0 que se puede descargar aquí: ftp://ftp.microsoft.com/bussys/Clients/MSCLIENT/DSK3-1.EXE (*04) ftp://ftp.microsoft.com/bussys/Clients/MSCLIENT/DSK3-2.EXE (*05) Los tres archivos mencionados son parte de "DSK3-1.EXE". Utilice la utilidad "EXPAMD.EXE" incluida en el primer disco para descomprimir estos archivos. * Copia DSK3-1.EXE a un directorio como C:\MSCLIENT1. Evite una ruta larga si lo hace en Windows. El software de 16 bits no se ejecurará, si la ruta es demasiado larga. * Ejecutar DSK3-1.EXE para descomprimir su contenido. * Descomprimir PROTMAN.DO_ y PROTMAN.EX_. EXPAND PROTMAN.DO_ -r EXPAND PROTMAN.EX_ -r * NETBIND.COM ya está sin comprimir. Ahora usted puede cajer y utilizar los tres archivos. Lea el archivo LICENSE.TXT antes de empezar a usar los archivos. El software es gratuito para uso interno. Ni la distribución ni la modificación está permitido.

EL conversor/shim

La última pieza que necesitamos es el "Controlados de paquetes para NDIS Converter". Obtener el ampliamente utilizado "DIS_PKT9.DOS" (Versión 9, ver: ftp://ftp.cc.umanitoba.ca/software/pc_network/ dis_pkt9.zip (*06)) o alternativamente la relativamente nueva (Versión 11) "DIS_PKT.DOS" (Ver: http://danlan.com/pdr_shim/odipkt/ odipkt.zip (*07)). No hay diferencias en el uso y manejo. Ambas fueron escritas por el profesor Joe R. Doupnik (Utah State University) y Dan Lanciani (Universidad de Harvard). El derecho de autor tiene el ya histórico FTP Software, Inc., que se publicó por suerte este controlador como de dominio público, libre para el uso, la distribución, el cambio y con código fuente.

Configuración de controladores NDIS

Como ya he dicho, esto es sólo una mínima instalación del cliente MS 3.0. El único propósito es utilizar aplicaciones basadas en paquetes de controladores TCP/IP. Con este fín: Copie los cuatro archivos PROTMAN.DOS PROTMAN.EXE NETBIND.COM DIS_PKT.DOS en un directorio, por ejemplo C:\NET Copie también el controlador MAC de la interfaz de la tarjeta de red, por ejemplo: EL3C574.DOS en este directorio. Ahora tenemos que crear el archivo de configuración necesarios para la arquitectura NDIS. Crear un archivo con el nombre PROTOCOL.INI en el interior del directorio C:\NET. Para nuestra configuración mínima que sólo necesita las siguientes líneas: --- PROTOCOL.INI --- [protman] DriverName=PROTMAN$ [EL3C574] DriverName=EL3C574$ [PKTDRV] drivername=PKTDRV$ bindings=EL3C574 intvec=0x60 chainvec=0x68 Explicación de los parámetros: Al igual que otros archivos *.INI, PROTOCOL.INI se estructura en con nombres de sección entre corchetes y nombres de los elementos con los valores que se les asignan. [protman] DriverName=PROTMAN$ La primera sección [protman] define el administrador de protocolos. Como se describe anteriormente, el director de Protocolo se carga como Driver PROTMAN.DOS que es llamado "PROTMAN $" aquí. La sección y la línea son obligatorios. [EL3C574] DriverName=EL3C574$ La sección [EL3C574] define la interfaz de tarjeta de red. Por defecto, la sección en sí lleva el nombre de la tarjeta - esto es útil, si tienes más de una tarjeta de red y utilizas diferentes secciones para diferentes tarjetas. Así el nombre de sección es el primer valor para cambiar aquí. Sería una buena idea ponerle el nombre de su propia tarjeta de red. Pero usted puede también cambiar el nombre de la sección de "tarjeta de red", "NIC" o incluso "baked_beans" - como usted quiera, siempre y cuando también cambie todas las otras líneas en PROTOCOL.INI que apunta a esa sección. La siguiente línea de esta sección es "DriverName = EL3C574 $". Define el controlador para la tarjeta de interfaz de red. En nuestro ejemplo, esto es EL3C574.DOS, que se llama "EL3C574$" aquí. Sin duda alguna que va a utilizar una tarjeta de red diferente a la mencionada en el ejemplo. Así que usted tendrá que cambiar esta línea. Usted encuentra el nombre correcto del controlador en un archivo de texto llamado "PROTOCOL.INI" que debe formar parte de los archivos del controlador NDIS que se suministran con la tarjeta. También es posible añadir más líneas a esta sección, por lo que puede definir los ajustes especiales para su tarjeta de red. Consulte la "PROTOCOL.INI" suministrado con el controlador NDIS para más información. Pero en muchos casos la línea con el drivername debería ser suficiente. [PKTDRV] drivername=PKTDRV$ bindings=EL3C574 intvec=0x60 chainvec=0x68 La siguiente sección "[PKTDRV]" define nuestro Dirver de paquetes para NDIS Converter, que es "DIS_PKT.DOS" o "DIS_PKT9.DOS". Ambos son llamados por el nombre de "PKTDRV$". Es importante que el convertidor se unirá al controlador de la tarjeta de red. Esto se hace mediante la siguiente línea "bindings=EL3C574". Tenga en cuenta que este nombre no incluye "$" carta - que hace referencia al nombre de la sección que define el Driver, no el propio Dirver. Así que si hubiera llamado esta sección "[baked_beans]" como se sugirió anteriormente, usted tendría que escribir "bindings=baked_beans" aquí;-). El elemento "intvec" especifica el vector de interrupción de software utilizado por la interfaz de controlador de paquetes. Como ya se ha explicado, este debe ser el valor hexadecimal 0x60 por defecto.   El elemento "chainvec" también se define una interrupción de software disponible. Su función sigue siendo un misterio para mí. Según paquetes inventor del conductor (ver: http://groups.google.de/group/comp. protocols.tcp-ip.ibmpc/msg/17b6041f7a3cde7c?dmode=source (*08)). FTP, la adición de una interrupción de la cadena de vectores puede mejorar la velocidad de procesamiento de paquetes y fiabilidad. Los usuarios vieron "un aumento de 10 veces en el rendimiento" (ver: http:// groups.google.de/group/comp.protocols.nfs/msg/9b0c2e0d6aa47b32? dmode=source (*09)). Para evitar errores en EMM386, algunas recomendaciones (ver: http://groups.google.de/group/bit.listserv. banyan-l/msg/aa961def5901f506?dmode=source (*10)) para establecer una interrupción que aumenta el vector mediante decimal 8. Así que si el intvec es 0x60 (es decimal 96), entonces el chainvec debe ser decimal 104 (96 + 8) que es 0x68 hexadecimal. Esto también se describe (ver: http://groups.google.de/group/comp.protocols. tcp-ip.ibmpc/msg/64f2b6060ff2b438?dmode=source (*11)) por uno de los autores de DIS_PKT.DOS, Dan Lanciani. Por favor, escriba si descubres más. Estos son todos los ajustes en PROTOCOL.INI necesarios para nuestro propósito. Un último consejo: Si se tiene en cuenta el cambio de algunos de estos valores en cada arranque, por ejemplo, por las opciones presentadas por un menú de arranque de DOS, puede encontrar freeware "Inifile" de Horst Schaeffer útil (ver: http://www. horstmuc.de/wbat32.htm (*12)).

Instalación

Lo último que queda por hacer ahora es cargar los controladores en el arranque. Así que cambiar los archivos del sistema para contener las siguientes líneas: --- FDCONFIG.SYS (FreeDOS) --- --- or CONFIG.SYS (MS DOS/other DOS) --- DEVICEHIGH=C:\NET\PROTMAN.DOS /I:C:\NET DEVICEHIGH=C:\NET\EL3C574.DOS DEVICEHIGH=C:\NET\DIS_PKT.DOS El parámetro "/I" dice el Director de Protocolo de la ubicación de PROTOCOL.INI. Esto no es necesario si ambos están en el mismo directorio. --- AUTOEXEC.BAT --- C:\NET\NETBIND.COM Tenga en cuenta que NETBIND.COM no se puede cargar alto y sólo debe ser ejecutada desde AUTOEXEC.BAT. Si intenta cargarlo como un Driver, se abortará con el mensaje de "run-time error R6009 - not enough space for environment".

Reiniciar

Eso es todo. Reinicie el sistema y utilizar una aplicación de TCP/IP simple como ping para probar si todo funciona.   (Imagen: mensajes de arranque de NDIS) (*01) OK (*02) https://web.archive.org/web/20030327055531/http:// www.ndis.com/faq/ (*03) https://web.archive.org/web/20100901143311/http://www.yale. edu/pclt/WINWORLD/NDIS.HTM (*04) https://www.virtualbox.org/wiki/Sharing_files_with_DOS y: https://archive.org/download/ftp.microsoft.com/ftp.microsoft. com.zip/ftp.microsoft.com%2Fbussys%2FClients%2FMSCLIENT%2FDSK3-1. EXE (*05) https://www.virtualbox.org/wiki/Sharing_files_with_DOS y: https://archive.org/download/ftp.microsoft.com/ftp.microsoft. com.zip/ftp.microsoft.com%2Fbussys%2FClients%2FMSCLIENT%2FDSK3-2. EXE y: http://download.amd.com/techdownloads/wfw31.zip y: https://archive.org/download/ftp.microsoft.com/ftp.microsoft. com.zip/ftp.microsoft.com%2FSoftlib%2FMSLFILES%2FWG1049.EXE y: https://archive.org/download/ftp.microsoft.com/ftp.microsoft. com.zip/ftp.microsoft.com%2FSoftlib%2FMSLFILES%2FNETSHAR.EXE y: https://jeffpar.github.io/kbarchive/kb/121/Q121086/ y: https://jeffpar.github.io/kbarchive/kb/128/Q128800/ (*06) OK (*07) https://web.archive.org/web/20110722171549/http:// www.danlan.com/ (*08) https://groups.google.com/forum/#!topic/comp.os.ms-windows. networking.tcp-ip/Ekxg5Y5pP0g (*09) https://groups.google.com/forum/#!original/comp.protocols. nfs/Xe1WnbPu0og/Mnukag0uDJsJ (*10) https://groups.google.com/forum/#!original/bit.listserv. banyan-l/v6HiU41jovQ/BvUBWe8dlqoJ (*11) https://groups.google.com/forum/#!original/comp.protocols .tcp-ip.ibmpc/-/OLTyDwa28mQJ (*12) https://www.horstmuc.de/div.htm#inifile ------------------------------------------------------------------------------ Copyright (C) 2007 Ulrich Hansen, Mainz (Germany), modificado en 2010 by W.Spiegl. Actualizado en 2014 por Lorenzo del Toro Para más información consulte aquí. Se concede permiso para copiar, distribuir y/o modificar este documento en los términos de la licencia de documentación libre GNU, versión 1.2 o cualquier versión posterior publicada por la Free Software Foundation. Una copia de la licencia está incluida en la sección titulada "GNU Free Documentation License 1.2".