Minix 2 Port To Modern Intel and AMD Processors

143 views
Skip to first unread message

Joel Charbonnet

unread,
Feb 12, 2026, 5:40:59 PMFeb 12
to min...@googlegroups.com
I’m new here (and to Google Groups) and would like to know if Minix 1 or Minix 2 run on modern processors (Intel i7 / AMD Ryzen 7)?

If not what would I need to do to make that happen?

Thanks

Michael Cheponis

unread,
Feb 13, 2026, 12:40:26 AMFeb 13
to min...@googlegroups.com
This answer from ChatGPT 5.3 Pro may be of help:


MINIX 1/2 are very old PC operating systems (early BIOS-era assumptions, old disk/NIC drivers, etc.). On modern i7 / Ryzen machines, the lowest-effort way to run them is to emulate/virtualize an old PC with QEMU (or VirtualBox). Trying to install them directly on bare metal is usually more work than it’s worth.

Minimal-effort route (recommended): QEMU + prebuilt MINIX 1/2 disk image

1) Install QEMU

Use whatever matches your host OS:

  • Debian/Ubuntu: sudo apt-get install qemu-system

  • Fedora: sudo dnf install @virtualization

  • Arch: sudo pacman -S qemu

  • macOS (Homebrew): brew install qemu

  • Windows: QEMU installers are linked from the QEMU download page (and there are MSYS2 pacman options too).

2) Download a ready-to-boot MINIX 1 or MINIX 2 image

The quickest “no install required” option I’ve found is davidgiven/minix2 “Quick and Dirty” release images:

  • MINIX 1: minix-1.7-hd-64MB.img.gz

  • MINIX 2: minix-2.0-hd-64MB.img.gz

(Those “hd-64MB” images are specifically meant to be bootable hard disk images, i.e., good for VMs.)

3) Decompress the image

On Linux/macOS:

gunzip minix-2.0-hd-64MB.img.gz # or: gunzip minix-1.7-hd-64MB.img.gz

On Windows: use 7-Zip (or any gzip-capable tool) to extract the .img.

4) Boot it with QEMU

MINIX 2:

qemu-system-i386 -m 64 -hda minix-2.0-hd-64MB.img -boot c

MINIX 1:

qemu-system-i386 -m 16 -hda minix-1.7-hd-64MB.img -boot c

Why those memory sizes: that distribution notes MINIX 1 supports up to ~16MB RAM and MINIX 2 up to ~64MB.

Tip (safer “try it without modifying the image”):

qemu-system-i386 -m 64 -hda minix-2.0-hd-64MB.img -boot c -snapshot

-snapshot makes writes temporary (great if you just want to poke around).

If QEMU complains about acceleration: force pure emulation (works everywhere, just slower):

qemu-system-i386 -accel tcg -m 64 -hda minix-2.0-hd-64MB.img -boot c

Even more “one-command” (Linux-centric): minixfromscratch’s MINIX 2 image + script

If you’re on Linux and want something that’s already packaged with helper scripts, the minixfromscratch project publishes a MINIX 2 “book version” VM image:

  • Download minix2.img.zip, unzip it, and run ./qemuminix2.sh (per their release notes).

They also explicitly warn to reboot cleanly (e.g., Ctrl+Alt+Del in QEMU) before closing QEMU to reduce filesystem corruption risk. 


--
You received this message because you are subscribed to the Google Groups "minix3" group.
To unsubscribe from this group and stop receiving emails from it, send an email to minix3+un...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/minix3/CAFXN0HPbksfJtVja_TqmURrf_cYmOoyA9kREWcQZLWHX0iZjqQ%40mail.gmail.com.

Joel Charbonnet

unread,
Feb 13, 2026, 2:30:21 AMFeb 13
to min...@googlegroups.com
Thank you for the detailed reply, now I have a jumping off point. Thanks again.

Terry McConnell

unread,
Feb 13, 2026, 10:32:41 AMFeb 13
to min...@googlegroups.com
Windows centric answer: I've run minix 2 under VMware (don't ask me why.) You could probably also use HyperV but I find VMware to be a lot less flaky than HyperV. VMware is free for non-commercial use. 

--

Joel Charbonnet

unread,
Feb 13, 2026, 1:06:21 PMFeb 13
to min...@googlegroups.com
I was planning on running Minix in Virtualbox to get a feel for how it runs. My main goal is to see if I can get it to run natively on modern hardware. I am retiring soon and I am debating between porting Minix to modern hardware or contribute on the Linux Kernel as an ongoing project.

ss l

unread,
Apr 8, 2026, 12:41:06 AM (14 days ago) Apr 8
to minix3
I would not be so dismissive as ChatGPT is -- there was a recent Youtube video (channel: "Omores") where someone got Windows 3 running in Standard mode on a completely contemporary computer. That said this is entirely dependent on the newer hardware properly emulating the old hardware, which means the choice of hardware is critical (e.g. one BIOS might do a decent job of emulation while another is missing the CSM entirely) and I can't say for certain that Minix doesn't access the hardware at a deeper level than Windows 3.

IMHO you'd be way better off either using vintage hardware (surprisingly expensive these days since relatively little remains and millennials like to play their childhood games on it) or something running on the Vortex86DX like the Diamond Systems Helios which I can confirm from first-hand experience works fantastically to run Minix 2 in 16-bit mode, or if you don't want to spend that kind of money just use VirtualBox. Note that QEMU does not work with Minix installation because the floppy drive emulation is busted (in a years old bug report, that had a patch that was apparently never included), unless you already have a hard disk image.

Денис Миронов

unread,
Apr 8, 2026, 5:17:51 AM (14 days ago) Apr 8
to min...@googlegroups.com
Hi! I'm currently busy porting minix3 to arm32, aarch64, risc-v64, and amd64. I've almost finished writing the kernel and memory manager. I don't think this project will be as important to the world as the Linux kernel. But I'm interested in creating a good, stable OS for embedded systems and older computers, or simply single-board computers like the Raspberry PI. If you're interested, please contact me.

пт, 13 февр. 2026 г., 21:06 Joel Charbonnet <charb...@gmail.com>:

ss l

unread,
Apr 8, 2026, 2:14:55 PM (13 days ago) Apr 8
to minix3
Very nice.

Minix "3.4.0" stalled out at one of the release candidates several years ago. I think if you were able to take that to the finish line -- i.e., where an ISO was available for at least one commonly available, inexpensive platform, and it could compile itself and the code was clean and well-organized, just like the AST releases, there would be a lot of interest. It would get picked up by all the major tech blogs and probably you'd get a bunch of people wanting to help out on the project.

afaik one of the major issues is display support, since on modern PCs you only have easy routines to display text early in the boot process. So you'd need to pick a platform where it would be possible to write a basic video driver I believe. And the lack of a USB stack, at least 2.0 is needed for a keyboard, it's not reasonable these days to ask users to find one of the very small number of motherboards with PS/2 ports or to use a serial terminal.

Денис Миронов

unread,
Apr 8, 2026, 3:10:39 PM (13 days ago) Apr 8
to min...@googlegroups.com
I used this version as a basis.
The only difference was that in this version they started porting to arm32 and attempted to implement SMP. So the code turned into a mishmash of defines and ifdefs, often architecture-dependent.
I understood the idea of ​​keeping the kernel small, but decided to abandon it.
Now my kernel has two architecture-independent data structures: an abstract memory map and a collection of abstract virtual memory page tables. These are large linked lists of structures, but this creates an additional layer of abstraction from the hardware. Now the hardware simply takes this data and interprets it into a physical virtual memory table.
Now the virtual memory server has become completely architecture-independent.
However, the main ideology of a microkernel has been preserved: policy outside the kernel, physical mechanisms inside.
I completely rewrote SMP, also separating it into architecture-independent code and logic common to all architectures. For this, I completely rewrote primitives such as IPI and Spinlock. Also separating their hardware from the logic.
All these changes allow full use of the key features of modern processors, such as smart data caching, monitors, and so on. Every processor of any architecture has new primitives that are logically similar but physically implemented differently. Minix, in its current implementation from the website, couldn't support them purely due to architectural limitations.

I'm currently finishing this kernel; the next one will be the memory manager.

Then I'll work on drivers and servers. For example, to support different keyboards, etc., the tty server needs to be rewritten—it's a huge, monolithic piece of code that includes drivers for the keyboard, video output, and UART.

This shouldn't be the case.
To achieve this, the structure of the drivers and servers will be changed.
The USB stack is simply dead and hangs when trying to connect any device. Not only is it unfinished, but it also contains bugs in its logic.
 The plan is as follows: the kernel and VM will be ready for testing and debugging in about a month.

The new driver and system server structure will take a few more months.

Then we'll be able to simply write drivers for various systems and add various features.

It's a shame my project isn't ready for collaborative work yet; that capability will realistically become available in about three months. The changes I'm currently making require a single decision-making point.

By the way, support for Grub, as the old bootloader, has been completely removed from the system. U-boot will be used on all platforms, and the system boot image itself is packaged in the fitImage format. This is much more flexible; the system currently has a ton of hardcoded code about the order and addresses of loaded Grub system servers.

My goal is to remove all hardcoded code from the kernel and system servers. Only fully dynamic data structures will be implemented.


ср, 8 апр. 2026 г., 21:15 ss l <412...@gmail.com>:

Subhash Rayudu Pinnamaneni

unread,
Apr 8, 2026, 3:15:27 PM (13 days ago) Apr 8
to min...@googlegroups.com
http://download.minix3.org/iso/snapshot/

I thought I had installed 3.4.0 and used startx after I ran several updates I will show the snapshots of that of the VirtualBox after 8 to 9 hours I am in travel right now my pc is at a distance.

Subhash Rayudu Pinnamaneni

unread,
Apr 8, 2026, 3:18:18 PM (13 days ago) Apr 8
to min...@googlegroups.com
3.3 stable release  startx gui never worked properly for me 3.4 did I ven installed gcc on it

Subhash Rayudu Pinnamaneni

unread,
Apr 9, 2026, 2:17:32 AM (13 days ago) Apr 9
to min...@googlegroups.com
image.pngimage.png
I meant clang is working started x window system using startx minix 3.4 in oracle virtualbox

it works on some old hardware too. For me

Денис Миронов

unread,
Apr 9, 2026, 5:29:58 AM (13 days ago) Apr 9
to min...@googlegroups.com
Coool! )))))))))

чт, 9 апр. 2026 г., 09:17 Subhash Rayudu Pinnamaneni <psub...@gmail.com>:
Reply all
Reply to author
Forward
0 new messages