Hacker News new | past | comments | ask | show | jobs | submit login

I feel like I should note down a few of the issues I've encountered while trying to be semi-productive with V7/x86. I ran it on qemu/kvm, so maybe some of the weirdness can be traced back to those.

The disk I/O seems to be some kind of disk destroyer, causing a number of very small writes during installation. It seems to be about 20 bytes per write.

The floppy driver did not interact well with the floppy drive qemu emulates. Writing to it worked fine, but trying to read from it renders I/O errors, then writing to it may even cause the system to reboot.

/bin/tbl and /bin/refer are separate executables (instruction and data separated). During the port, support for this kind of executable was removed. refer still behaves erratically, even after recompiling as "regular" executables by removing the -n and -i flags.

/bin/login seems to have difficulties if the first login fails due to the wrong password being supplied, which is behavior not exhibited by V7 on the PDP-11. After the first failed login, no other login attempts seem to go through unless the account has no password to check in the first place. I'm tempted to blame this on qemu, but I'm not sure.

Adding vi and making the console more sane (backspace actually deleting characters instead of having to use #) were nice additions, though.




the backspace thing is I think configurable based on your terminal or using stty to do it.


On the original V7, there are limits to that. The default characters are erase #, kill @, interrupt DEL (commonly represented as ^?).

You can change erase to ^H. You cannot change erase to DEL, which is what many modern terminal emulators send; tmux even outright forces DEL. This is partially because the interrupt character is DEL and that is hard-coded inside sys/h/tty.h. However, even after changing that, rebuilding the entire kernel with make all, changing src/cmd/{getty,login}.c to use DEL for erase, I still got erratic behavior. I'll have to comb through sys/dev/tty.c sometime and see if I can pinpoint the issue that blocks DEL for erase or if there's something in the build setup.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: