¿Alguien ha intentado ejecutar Windows 98 con 8 o 10 GB de RAM, lo que se consideraría una cantidad increíble en ese entonces?

Ah, sí, hay una gran cantidad de videos en YouTube que prueban exactamente eso: instalar software antiguo en un hardware moderno. Aquí hay uno con más de un millón de visitas:

Editar: Mi única esperanza es que lo que sea que estemos usando ahora no sea tan ridículo como esa pobre persona en unos 20 años 🙂

Ahora solo para explicarlo un poco, para la gente promedio que no tiene tecnología : Windows 98 era un extraño híbrido de un sistema operativo antiguo de 16 bits tipo DOS y un sistema operativo de 32 bits “recién llegado”. (¿Recuerdas DOS? Esa cosa de letras blancas en una pantalla negra y sin mouse o íconos. Sí, ese es el DOS que se usó dentro de Windows 98).

Al igual que cualquier sistema operativo de un cierto bitness , ese número define la cantidad de memoria que puede ver y usar. 16 bits, es decir, 2 ^ 16 = 65.536 bytes. Y 32 bits, es decir, 2 ^ 32 = 4,294,967,296 bytes (o 4GB). Pero eso está en un escenario ideal. En la práctica, esas suposiciones son bastante reducidas por los supuestos que hacen los arquitectos del sistema operativo.

Entonces, en el caso de Windows 98, debido a un soporte para una extensión de 32 bits, pero también debido a un “arrastre” de un soporte para una arquitectura anterior de 16 bits, Microsoft ideó un administrador de memoria muy complicado que básicamente podría soportar hasta 512 MB de RAM (y tal vez no oficialmente hasta 1 GB, como algunas personas informaban).

Así que ahora la parte interesante. ¿Qué pasaría si hay mucha más memoria disponible?

Bueno, desafortunadamente los programadores de Microsoft en ese momento no eran muy buenos en lo que estaban haciendo. (Sus jefes eran buenos en marketing. ¡Pero no en escribir software!) Sí, esa es una de las razones principales por las que la gente odiaba Windows (y probablemente todavía lo hacen) y por qué Mac OS y Linux ganaron tanto terreno desde entonces. Entonces, ¿cuál podría ser la razón?

Ahora algo de código para la gente techy :

Descargo de responsabilidad: no he mirado el código real del administrador de memoria de Windows 98, es solo una suposición que derivé de la ingeniería inversa de su código posterior.

Supongamos que necesita saber cuánta memoria está presente en el sistema y comenzar a sondear cada módulo de memoria y sumar los tamaños en algún registro interno. Luego, por alguna razón desconocida, usted decide: ” ¡Hey, no hay forma de que alguien pueda tener más de 1 GB de RAM! “Y corta ese registro de contador, digamos, a 30 bits, efectivamente haciendo esto:

; eax = registro que se usa para contar RAM
Y eax, 03FFFFFFFh

Entonces, en ese caso, sus 2 GB de RAM se convierten básicamente en 0 bytes, o con código:

; suponga eax = 80000000h para 2GB
Y eax, 03FFFFFFFh
; ahora eax es 0

Luego realiza una comprobación a ciegas para ver si el usuario tiene una cantidad mínima de RAM requerida. Pero, ¿qué obtiene el código? 0 bytes ¡Oh no! ¡Eso no es suficiente!

Y es por eso que ves ese mensaje tonto de ” No hay suficiente memoria ” que la persona en YouTube mostró tan hilarantemente.


PD. Solo para jugar al abogado del diablo aquí. A pesar de mi burla de Microsoft, debo admitir, como desarrollador de software, que es muy difícil escribir un código a prueba de futuro. Lo que definitivamente debemos castigar a Microsoft es por no apegarse, ignorar y negar los estándares de la industria. (¿Recuerdas una atrocidad que solíamos llamar Internet Explorer ? Sí. Pero esa es otra historia).

Lo último que mencionaré aquí, que es cercano y querido para mi corazón, es el legado de ese enfoque que Microsoft ha creado en los años 90 y principios de los 2000 que todavía estamos tratando hoy. Estoy hablando del código descuidado que todavía está presente en muchas de sus cosas heredadas, incluso en su Windows 10.

Lo peor que trae son los llamados desbordamientos de búfer que los hackers están explotando todos los días para entrar en nuestros sistemas.

Aquí hay un buen ejemplo (código C muy simple):

void function_that_parses_user_input_from_the_internet (char * userInput)
{
// Soy un desarrollador “inteligente” con prisa y supongo
// que el usuario final nunca me enviará más de 128
// caracteres de entrada! ¿Por qué él / ella en 1998?
char bufferToParse [128];

// Ahora necesito copiar la entrada del usuario en mi búfer.
// ¡Hey, hay una buena función para eso!
strcpy (bufferToParse, userInput); // ¡Puede causar desbordamiento del búfer!

// Haz más de mis cosas “inteligentes” ……
}

Ese código arriba oculto en el fondo de algún archivo del núcleo en el núcleo de algún componente de Windows puede ser la razón por la que obtiene una infección de malware desagradable cuando visita algún sitio web aleatorio o recibe un correo electrónico incorrecto. Si está interesado en obtener más información, busque vulnerabilidades de vulnerabilidad de día cero .

El año pasado intenté instalar Windows 98 en una computadora moderna. En realidad es posible, pero los primeros problemas surgen incluso durante el proceso de instalación.

Windows 98 viene con algunos controladores de CD-ROM predeterminados que a menudo no son compatibles con las unidades Samsung CR-ROM, LG CD-ROM o Sony CD-ROM. Entonces, al principio, necesita encontrar una unidad de CD-ROM perfectamente compatible con los controladores de CD-ROM antiguos. Descubrí que las unidades ASUS generalmente funcionan perfectamente. Lo que es aún más confuso es que el CD-ROM siempre funciona a primera vista, pero con el CD-ROM de LG siempre falla al copiar archivos.

Los autores de Windows 98 tampoco esperaban que alguien pudiera tener más de 512 MB de RAM, por lo tanto, la instalación falla con un error.

Después de buscar en Google ese error, descubrí que la memoria máxima admitida es de 768 MB de RAM y es necesario editar manualmente un archivo de configuración y reescribir el tamaño de la memoria. Luego se puede reanudar la instalación.

Otro problema es que los autores esperaban que todos tuvieran una unidad de disquete. Por lo tanto, Windows 98 a veces espera hasta que la unidad de disquete esté lista (especialmente cuando se espera insertar un disquete con el controlador del dispositivo). Por lo tanto, debe habilitar el controlador de la unidad de disquete en la configuración del BIOS si desea evitar problemas.

También es necesario cambiar el controlador SATA IDE al modo heredado, de lo contrario no encontrará ningún disco duro.

Por lo tanto, Windows 98 no es capaz de funcionar incluso con solo 1 GB de RAM, debe disminuir el tamaño de la memoria manualmente en el archivo de configuración.

Reproduje este escenario con el CD de instalación original de Windows 98SE en VirtualBox, configurado correctamente para Win98, con la excepción de 4 GB de RAM “demente”.

Se traduce como “ Muy poca memoria para inicializar el sistema Windows. Termine uno o más programas residentes o elimine uno o más programas de usuario innecesarios de CONFIG.SYS y AUTOEXEC.BAR y luego reinicie su computadora “.

Un problema mucho mayor es que no hay controladores para el hardware moderno. Ya sea tan complicado como la tarjeta GFX o tan simple como la interfaz de disco AHCI.

EDITAR:

Intenté con 2 GB de RAM (mismo error) y 1 GB de RAM (se inició correctamente). Logré instalar Firefox 2.0 (Internet Explorer no se conectó a Quora debido a la falta fundamental de protocolos criptográficos adecuados) y obtuve esto:

Hola, hay límites a considerar aquí.

  1. Los límites de la arquitectura, es decir, el hardware y el sistema operativo Windows no admiten tanta memoria. Windows 98 es un sistema operativo de 32 bits que, por diseño, se queda sin bits para realmente paginar (hablar) a la memoria un cierto tamaño.
  2. Windows XP admite de forma nativa hasta 512 MB, puede obtener más con hacks de registro, etc., pero no usa la memoria adicional correctamente y se pone defectuoso.
  3. Hay ciertos sistemas operativos de Microsoft, principalmente en servidores que limitan la cantidad de RAM que podría asignarse por la licencia que compró.
  4. He visto servidores con más memoria instalada de la que puede usar el sistema operativo, la he eliminado para acelerar el servidor.

Voy a desviarme un poco del tema, ya que la mayoría de las respuestas anteriores han confirmado el último soporte en 9x para tanta RAM, podría ejecutar win 98 no con, sino IN 8GB RAM si creó una unidad de RAM.

Sería muy rápido!

Windows 98 no puede ver más de 2 GB de RAM porque solo tiene un direccionamiento de 32 bits (por lo que un entero de 32 bits firmado solo puede contar hasta 2 GB)

Windows 95 no puede ver más de 512 MB, porque ni siquiera es un verdadero sistema operativo de 32 bits.

Será imposible Windows 98 es un sistema operativo de 32 bits que admite un máximo de 2 GB de memoria virtual y 1 GB de memoria real / extendida.

Mucha gente lo ejecutó con 1 GB de memoria real. Incluso entonces, se necesitaba un truco especial, ya que apareció un error desagradable de aproximadamente 480 MB. También hubo algunos programas que fallaron solo porque la memoria era demasiado grande.

Windows 98 no puede reconocer tanta RAM ( https://www.techrepublic.com/for …)

Windows 98 ni siquiera se ejecuta (sin parches) en más de 1 GB de RAM, por lo que dudo que alguien haya probado más de 4 GB.

Plus ’98 es un sistema operativo de 32 bits, lo que significa que ni siquiera vería más de 4 GB.

8gig sí, pero no lo reconoció todo. Creo que 4 gig es máximo para la arquitectura de Windows 9x. Ejecuté 8gig en un servidor Windows NT4.

Puede probar el software de la máquina virtual para hacer este tipo de experimentos.

More Interesting

¿Son suficientes 32 gigas de RAM para una computadora AMD 8350 de uso diario para algunos juegos y navegación web?

¿Por qué Windows 95 tenía un límite de RAM? Es un sistema operativo de 32 bits y debería ver 4 GB.

¿Cómo jugaré GTA 5 con gráficos de 2 GB y 4 GB de RAM con un procesador i5?

¿Cuál sería el mejor Windows para una computadora portátil de 2GB de RAM, que tiene un procesador Dual Core de 2.4GHz de 64 bits?

¿Por qué 2 GB de almacenamiento solo tienen 1,8 GB si 1 GB es igual a 1024 MB?

Si los procesadores de 64 bits pueden usar teóricamente 16 exabytes de RAM, ¿por qué todavía tenemos bajas cantidades de RAM como 16GB?

¿Por qué tenemos más templos de Krishna en comparación con Ram, donde ambos son avatares del mismo dios (Vishnu)?

¿Cómo funciona la interfaz entre RAM y procesador, comparando diferentes tamaños de RAM y generaciones de procesadores?

¿Por qué la RAM se llama memoria de acceso aleatorio?

¿Cuánto es 2 GB de RAM?

¿Cuáles son los mejores teléfonos inteligentes con Rs.8000 con un mínimo de 2 GB de ram, procesador octa core, batería de 4000 mah con 4G?

¿Cuáles son algunos de los conceptos más erróneos acerca de mirar el uso de RAM en el Administrador de tareas?

Cómo actualizar de 2 GB de RAM a 4 GB de RAM en una computadora portátil con Windows 7

Hardware de la computadora: ¿Cuál de estos desempeña un papel importante en los retrasos durante los juegos: menos ram, menos memoria de gráficos o menos velocidad de procesador?

¿Un Macbook funciona mejor al agregar un SSD o agregar más RAM?