SpartaDOS X (o SpartaDOS 4.0 ) es un sistema operativo de disco para la familia de computadoras Atari de 8 bits que se parece mucho a MS-DOS . Fue desarrollado y vendido por ICD, Inc. en 1987-1993, y muchos años después lo adquirió la comunidad de terceros SpartaDOS X Upgrade Project, que aún mantiene el software.
Desarrollador | ICD, Inc. (4.0-4.21) Ingeniería fina (4.22) DLT (desde 4.31) |
---|---|
Escrito en | 6502 ensamblador |
Familia OS | SpartaDOS X |
Estado de trabajo | Actual |
Modelo fuente | Fuente cerrada |
Versión inicial | 1988 |
Último lanzamiento | 4.49 / 7 de abril de 2020 |
Vista previa más reciente | 4.49c / 28 de abril de 2017 [1] |
Disponible en | inglés |
Plataformas | Familia Atari de 8 bits |
Influenciado por | MS-DOS |
Interfaz de usuario predeterminada | Interfaz de línea de comandos |
Licencia | Propiedad |
Página web oficial | spartados |
Historia
SpartaDOS X es un sucesor de SpartaDOS 1.0, 2.0 y 3.0 (también productos ICD) y, si bien disfruta de un buen nivel de compatibilidad con versiones anteriores, es un sistema completamente nuevo, escrito desde cero.
SpartaDOS X 4.0 fue desarrollado originalmente por Michael Gustafson en 1987-89, [2] y enviado en cartuchos ROM de 64k por ICD, Inc. [3] hasta la versión 4.21. El cartucho contenía una ranura de cartucho adicional en sí mismo, de modo que era posible conectar otro cartucho, como el reloj con batería de ICD R-Time 8 , un cartucho de idioma ( Action ! , MAC / 65, etc.) o un juego. cartucho y utilícelo junto con el DOS.
En 1992, Atari Corp. eliminó todo el soporte oficial para sus computadoras de 8 bits, y también lo hizo ICD poco después. Los derechos del inventario de ICD de 8 bits fueron adquiridos en noviembre de 1993 por Michael Hohman, oficialmente como Fine Tooned Engineering . FTE publicó una versión 4.22 ligeramente actualizada el 5 de noviembre de 1995, [2] y, después de dos o tres años, desapareció junto con todos los elementos y derechos que poseía.
Diez años más tarde, el desarrollo de SpartaDOS X, entonces considerado abandonware , fue elegido por sus entusiastas, como SpartaDOS X Upgrade Project. [4] Resultó en varias revisiones no oficiales del software, incorporando muchas de las utilidades escritas desde 1992, limpiando muchos problemas identificados e incluyendo numerosas mejoras. A partir de 2020[actualizar] las versiones publicadas son:
- 4,31 (2005)
- 4.39RC (2006)
- 4.40 (una versión beta filtrada, 2006)
- 4.41 (febrero de 2008)
- 4.42 (diciembre de 2008)
- 4.43 (abril de 2011)
- 4.44 (junio de 2011)
- 4.45 (noviembre de 2011)
- 4.46 (enero de 2013)
- 4.47 (febrero de 2015)
- 4.48 (julio de 2016)
- 4.49 (abril de 2020)
Caracteristicas
General
SpartaDOS X es un sistema operativo no multitarea modelado intencionalmente y muy parecido a MS-DOS en apariencia. Consiste en el kernel, la biblioteca del sistema, varios tipos de controladores, el shell (llamado COMMAND.COM ) y varios programas de utilidad. SpartaDOS X está escrito en lenguaje de máquina 6502 y encaja en un cartucho ROM orientado a archivos de 128k .
Dispositivos de almacenamiento compatibles
Hay soporte completo para unidades de disco serie de tipo Atari, así como para discos duros paralelos, siempre que cumplan con los estándares de Atari (es decir, siempre que utilicen el mecanismo de interfaz de bus paralelo (PBI) "plug-and-play" implementado en el SO ROM de las computadoras XL / XE). Para aquellos que no lo hacen, y para discos RAM y similares, se pueden instalar hasta cuatro controladores de dispositivos de bloque. Las interfaces de disco duro no estándar son manejadas por controladores especializados.
El número máximo de unidades (o particiones de disco duro) conectadas al mismo tiempo es de 15 a partir de la versión 4.40 (9 en versiones anteriores).
Funciones integradas del kernel
El kernel permite abrir archivos y directorios en los modos de solo lectura, solo escritura, escritura-anexión y lectura-escritura. También mantiene variables de entorno y los programas pueden solicitar que se busquen archivos a través de directorios especificados en $ PATH. Las variables también controlan algunas configuraciones para el DOS, así como para los programas, por ejemplo, el formato de la fecha y la hora que se mostrarán (la elección es entre el DD-MM-AA "europeo" y el reloj de 24 horas, y el formato "americano" MM-DD-YY y reloj de 12 horas).
Los controladores del sistema de archivos
Gracias a alguna forma de sistema de archivos virtual, se puede acceder directamente a prácticamente cualquier sistema de archivos, si existe un controlador de sistema de archivos apropiado y se cargó en la memoria. Se pueden instalar hasta ocho de estos controladores a la vez.
El controlador del sistema de archivos principal (que se ajusta a menos de 4.5 KB) puede buscar directorios (FFIRST / FNEXT), leer / escribir archivos (FREAD / FWRITE), recuperar o cambiar la posición actual dentro de un archivo (FTELL / FSEEK), recuperar la longitud del archivo (FILELENG), eliminar archivos y directorios (REMOVE / RMDIR ), renombrar archivos y directorios ( RENAME / RENDIR), crear directorios ( MKDIR ), cambiar atributos en archivos y directorios ( CHMOD ), cambiar el directorio actual ( CHDIR ), recuperar la ruta a directorio actual (GETCWD), recopile información sobre el disco (GETDFREE) y cree un archivo binario de arranque (SETBOOT). También mantiene la caché de búfer en cola que puede contener hasta 16 sectores (8 KB) a la vez.
El sistema de archivos SpartaDOS
El formato del sistema de archivos propietario , llamado SpartaDOS FS (no relacionado y no compatible con MS-DOS FAT ), ofrece soporte completo para subdirectorios, atributos similares a MS-DOS (AHPS: Archivado , Oculto , Protegido , Subdirectorio ), fecha y hora de modificación sellos, acceso aleatorio a datos dentro de un archivo, archivos dispersos .
La convención de nomenclatura de archivos es 8 + 3 (este esquema, heredado de CP / M , es normal en Atari). La estructura de directorios es jerárquica, no hay otros límites prácticos en los directorios de anidamiento. Un directorio puede contener hasta 1423 entradas de archivos y otros directorios.
El sistema de archivos es de 16 bits: una unidad puede contener hasta 65.535 sectores lógicos (el sector 0 no existe en los discos Atari). El tamaño del sector lógico es de 128 o 256 bytes en versiones anteriores y de 128, 256 y 512 bytes a partir de la versión 4.40. Esto hace una capacidad máxima de 16 MB por partición en versiones anteriores y 32 MB a partir de la v.4.40. En teoría, es posible obtener 4 GB por disco, al hacer clústeres de sectores , hasta 65.536 bytes por clúster, pero aún no se ha implementado.
La biblioteca de DOS
La biblioteca del sistema contiene un cargador binario que admite binarios Atari estándar dependientes de la dirección, así como archivos binarios SpartaDOS X independientes de la dirección ("reubicables"). También facilita tareas como el manejo de errores, el análisis de la línea de comandos, así como la administración de la memoria, archivos y recursos de dispositivos, etc. La biblioteca también contiene un formateador de disco controlado por menús, que se puede invocar en cualquier momento, no solo desde el DOS. 'Procesador de comandos, sino también desde dentro de un programa de aplicación.
La biblioteca completa ocupa 24 KB del cartucho (en tres bancos, 8 KB cada uno) y se puede apagar según sea necesario para liberar algo de memoria.
COMMAND.COM
La interfaz de usuario predeterminada de SpartaDOS X es un intérprete de línea de comandos con el mismo nombre que el utilizado por MS-DOS: COMMAND.COM. El programa SpartaDOS X COMMAND.COM tiene menos de 4 KB e incluye aproximadamente 45 comandos internos como DIR , CD , DEL , etc. La redirección de E / S utiliza "<<" y ">>" en lugar de "<" y ">" de UNIX y otros sistemas (esto se debe a que el signo ">" es el separador de ruta nativo de SpartaDOS).
Las pseudopipelines están disponibles a partir de SpartaDOS X versión 4.42.
Los archivos por lotes pueden contener condicionales estructurados como IF ... ELSE ... FI, GOTO, GOSUB, procedimientos y bucles.
La variable de entorno $ COMSPEC puede apuntar a un intérprete de línea de comandos alternativo, que se cargará en lugar de COMMAND.COM.
Comandos, programas de utilidad y extensiones opcionales
La utilidad adicional, llamada RUNEXT, permite asociar tipos de datos con programas para que se invoquen automáticamente, cuando el usuario ingresa el nombre del archivo de datos en el indicador de DOS y presiona la tecla Retorno.
Un programa llamado MENU facilita las tareas complejas de administración de archivos y puede servir como un shell de reemplazo. Otras utilidades permiten cambiar los nombres de los discos, buscar archivos en los discos, recuperarlos, instalar el búfer del teclado , editar archivos del sistema ( CONFIG.SYS y AUTOEXEC.BAT ), etc. Un puerto de ARC proporciona funciones de compresión de archivos.
Entre los programas dedicados, que no están disponibles directamente en el cartucho y, por lo tanto, no están incluidos con el propio DOS, hay editores de disco disponibles, así como utilidades para verificar y reparar la consistencia del sistema de archivos.
Los siguientes comandos son compatibles con SpartaDOS X. [5]
- ADJUNTAR
- ARCO
- ATR
- ATTRIB
- BÁSICO
- BLOAD
- BOTA
- CARRO
- CD
- CHDIR
- CHKDSK
- CHTD
- CHVOL
- CLR
- CLS
- FRÍO
- MANDO
- COMP
- ESTAFA
- COPIAR
- CREDIR
- CWD
- FECHA
- DEL
- DELDIR
- ELIMINAR
- DELTREE
- DEV
- DF
- DIR
- DIRS
- VERTEDERO
- ECO
- ED
- BORRAR
- ENCONTRAR
- FMT
- FORMATO
- CLAVE
- MENOS
- CARGA
- HOMBRE
- MAPA
- Maryland
- MDUMP
- MEM
- MENÚ
- MKDIR
- MÁS
- CAMINO
- PAUSA
- OJEADA
- DAR UN TOQUE
- INMEDIATO
- PWD
- RD
- REN
- REBAUTIZAR
- RENDIR
- RMDIR
- RS232
- AHORRAR
- COLOCAR
- CAMINOS
- SIOSET
- SORTDIR
- INTERCAMBIO
- TD
- HORA
- TIPO
- ANULAR
- VER
- VERIFICAR
- X
Configuración
Al inicio, se lee un archivo de texto llamado CONFIG.SYS desde el disco de arranque. El contenido del archivo decide qué memoria usará el DOS para mantener la mayor parte de su código y controladores (la elección es entre la memoria extendida y dos áreas del 64K convencional), cuántos archivos se pueden abrir a la vez, el tamaño de la memoria caché del búfer y su ubicación en la memoria (las mismas opciones que para el código DOS), las variables de entorno predeterminadas y los controladores que se deben cargar.
Aparte del "principal", puede haber hasta 9 archivos de configuración alternativos (o 19 a partir de la v.4.45). La elección entre ellos se ofrece al inicio en forma de menú. Cuando no hay ningún archivo CONFIG.SYS, el predeterminado se carga desde el cartucho.
El otro archivo predeterminado que se puede utilizar para la configuración es AUTOEXEC.BAT. Es un archivo por lotes que se ejecuta COMMAND.COM cuando se carga COMMAND.COM por primera vez.
Requisitos
SpartaDOS X requiere una computadora Atari de 8 bits (modelos 400, 800 o XL / XE) equipada con al menos 48 KB de memoria convencional para funcionar, o 64 KB para ser realmente utilizable (en una máquina de 48K queda muy poca memoria, ya que para ejecutar la mayoría de los programas). Sin embargo, la configuración recomendada es de al menos 128 KB de RAM (64k convencional más al menos 64k extendida). El DOS puede usar la memoria extendida para mantener gran parte de su código, caché de búfer y estructuras internas, liberando así la memoria convencional. El resto de la memoria extendida se puede utilizar para controladores adicionales o discos RAM.
Relación con otros DOS-es para Atari
A diferencia de su predecesor, SpartaDOS 3.0, SpartaDOS X no es lo que comúnmente se denomina "DOS" en el lenguaje de Atari de 8 bits.
El sistema operativo Atari de 8 bits consta de dos partes principales: el "SO" basado en ROM y el "DOS" de arranque. El error común sobre esa división es que estas partes respectivas corresponden a BIOS y DOS en una máquina compatible con IBM PC . En realidad, el "SO" es responsable de la comunicación no solo con los dispositivos de bloque (como PC BIOS ), sino también de los dispositivos de caracteres, incluidos los orientados a archivos (como PC DOS ). En consecuencia, todas las funciones de administración de archivos están centralizadas en la parte "SO", y la parte "DOS" es solo uno de sus controladores de dispositivo subordinados, que funciona en un medio de almacenamiento masivo (como un disquete).
Un "DOS" para Atari , entonces, normalmente consiste en el controlador de dispositivo mencionado anteriormente (llamado FMS, "Sistema de administración de archivos") y un programa de aplicación que desempeña el papel del shell del sistema operativo. Este shell se denomina normalmente DUP, "Paquete de utilidades de disco". Toda la comunicación entre los programas de usuario (incluido el DUP) y FMS pasa por el CIO ("Entrada / Salida Central") que reside en la ROM.
Tal diseño tiene algunas deficiencias, por ejemplo, ningún DOS típico puede mantener más de ocho archivos abiertos a la vez, porque este es el límite impuesto por la API del "SO" basado en ROM.
Ahora SpartaDOS X, a pesar de que está registrado en el CIO basado en ROM como un controlador de dispositivo y (para compatibilidad con versiones anteriores) realiza todas las funciones típicas de DOS según lo solicitado de esa manera, es de hecho independiente del CIO. En cambio, tiene su propio "centro de E / S" (conocido como "el kernel"), no relacionado con el sistema operativo basado en ROM, con su propio conjunto de especificadores y controladores para ambos dispositivos de caracteres (como CON: o COM :) y bloque dispositivos.
Bajo SpartaDOS X, los programas pueden realizar todas las operaciones de E / S a través del kernel SpartaDOS sin pasar por el sistema operativo Atari en la ROM por completo. Gracias a eso, fue posible romper muchas de sus limitaciones: por ejemplo, puede haber hasta 16 archivos abiertos a la vez. Esto también hace que SpartaDOS X (a diferencia de, por ejemplo, su predecesor SpartaDOS 3.2, o cualquier otro DOS para Atari) sea un sistema operativo , no solo otro controlador de dispositivo con algún tipo de shell.
Referencias
- ^ Página del proyecto de actualización de SpartaDOS X: versión beta actual
- ^ a b Preguntas frecuentes de Atari de 8 bits http://faqs.cs.uu.nl/na-dir/atari-8-bit/faq.html
- ^ ANTIC VOL. 7, NO. 11 / MARZO 1989 / PÁGINA 15 http://www.atarimagazines.com/v7n11/spartados.html
- ^ "Proyecto de actualización SpartaDOS X" . Consultado el 12 de octubre de 2011 .
- ^ Guía del usuario de SpartaDOS X 4.48