|
eschaton posted:it’s a decent platform for that, that’s what Andy Tanenbaum & crew did to make MINIX and another group did to create PC/IX oh man, I wish I had the time to spare to do something weird like this what would be a good simulation setup to get started?
|
# ? Jan 22, 2022 16:28 |
|
|
# ? May 2, 2024 00:17 |
|
Gun Metal Cray posted:oh man, I wish I had the time to spare to do something weird like this SIMH is a good simulator for all sorts of vintage mainframes and minicomputers. PCem is pretty much the gold standard for reasonably accurately emulating vintage x86 machines through the 80s and into the early 90s currently fighting with openwatcom to try to get it to actually link a 16-bit flat binary where I want it to but its linker script format is completely different than standard ld and frankly really loving sucks.
|
# ? Jan 23, 2022 02:08 |
|
feedmegin posted:Well, 16 bit data lines. Original 68k at an architectural level had a 32 bit address space but only ran out 24 address lines (limiting maximum addressable memory to 16 megabytes) - the top byte in an address would thus be ignored. This caused problems down the line when addressable memory was increased because people would use that top byte for stuff like type tags; a similar thing happened with early ARM, which is why modern 64 bit architectures that don't use all their theoretical address space specify exactly what the unused bits should be and fault if you put anything else in there. i think the pointer authentication stuff on arm uses the whole space
|
# ? Jan 23, 2022 17:45 |
|
Kazinsal posted:SIMH is a good simulator for all sorts of vintage mainframes and minicomputers. PCem is pretty much the gold standard for reasonably accurately emulating vintage x86 machines through the 80s and into the early 90s I take it that openwatcom is the only viable option for doing a C targeting 8088/86 from a relatively modern system, right? gonna check out PCem, cheers
|
# ? Jan 23, 2022 20:25 |
|
Gun Metal Cray posted:I take it that openwatcom is the only viable option for doing a C targeting 8088/86 from a relatively modern system, right? Dosbox is a pretty convenient/straightforward way to run old compilers on modern systems.
|
# ? Jan 23, 2022 22:22 |
|
Gun Metal Cray posted:oh man, I wish I had the time to spare to do something weird like this SIMH works pretty well, it has decent emulation of tons of old architectures including the PDP series and VAX, HP 2100 (earlier version of HP 1000, suitable for RTE) and HP 3000 (an earlier version, suitable for MPE IV) and there are kits for some that will let you get something up and running quickly I just wish SIMH had more of a “detached” console; it uses stdio for both its own console and the simulated system’s console, which isn’t great if you want to a simulator as a service; ideally it’d have distinct concepts of log output, simulator console I/O, and simulated system I/O, and allow all three to be wired up independently via a system’s ini file
|
# ? Jan 24, 2022 10:43 |
|
DuckConference posted:i think the pointer authentication stuff on arm uses the whole space the kernel tells the processor how many bits to use. it also conditionally honors tbi, which allows programmers to use the top 8 bits without faulting
|
# ? Jan 24, 2022 22:36 |
|
DEC teams survived long after the company itself went under, there were specific projects where decades later there was significant resistance to the intel way of doing things idk how A20 looms in my head as a giant complication on everything ever, but it wouldn't surprise me if practitioners rarely had to gently caress with it
|
# ? Jan 31, 2022 18:12 |
|
having 21 address bits is physically impossible
|
# ? Jan 31, 2022 18:30 |
|
2MB! what kind of king or billionaire would ever own that much memory?!
|
# ? Jan 31, 2022 19:06 |
|
JawnV6 posted:DEC teams survived long after the company itself went under, there were specific projects where decades later there was significant resistance to the intel way of doing things wasn’t NT developed by ex-DEC people? i remember one of the architects expressing particular scorn at unix for its i/o model (DEC had famously hitched their wagon to VMS)
|
# ? Jan 31, 2022 20:04 |
|
epitaph posted:wasn’t NT developed by ex-DEC people? i remember one of the architects expressing particular scorn at unix for its i/o model (DEC had famously hitched their wagon to VMS) if you add 1 to all the letters in VMS you get WNT #wow #whoa
|
# ? Jan 31, 2022 20:18 |
|
JawnV6 posted:DEC teams survived long after the company itself went under, there were specific projects where decades later there was significant resistance to the intel way of doing things if you're using a full UEFI boot you don't have to frob the 8042 to turn the A20 gate on, but if you're using legacy BIOS boot or UEFI CSM you still do epitaph posted:wasn’t NT developed by ex-DEC people? i remember one of the architects expressing particular scorn at unix for its i/o model (DEC had famously hitched their wagon to VMS) Dave Cutler was lead on both VMS and NT and he fuckin hates unix with an ahabian passion
|
# ? Jan 31, 2022 20:36 |
|
epitaph posted:wasn’t NT developed by ex-DEC people? Dave Cutler was the primary architect of both quote:i remember one of the architects expressing particular scorn at unix for its i/o model (DEC had famously hitched their wagon to VMS) VMS has a very good I/O model, especially for running a multi-user system on what would be considered a paltry amount of RAM for a server even 25 years ago I set up a VAXstation 4000 Model 60 emulator with the final VAX release of VMS and all the patches and development tools so I could build and fool around with The Monster and it was all really smooth my real VAXstation 4000 VLC has a whopping 24MB of RAM and while it’s not like it’s super fast, it’s perfectly serviceable for both single-user graphical login or multi-user network login, about the only downside is no direct SSH (since even with an implementation it’d likely be too slow and low-memory to negotiate a connection) a lot of the classic Mac OS follows a similar “asynchronous, parameter block specified I/O with completion handlers” pattern to VMS and NT and it works quite well for keeping what’s actually a rather slow system responsive, it’s no wonder that UNIX async I/O tends to look similar as it tries to improve performance
|
# ? Feb 1, 2022 07:11 |
|
Kazinsal posted:Dave Cutler was lead on both VMS and NT and he fuckin hates unix with an ahabian passion i gotta hear stories come ONNnn
|
# ? Feb 1, 2022 08:12 |
|
Lady Radia posted:i gotta hear stories come ONNnn I've never met the guy but DEC folks who worked with him said he thought the entire I/O and userspace processes/daemons model of Unix was obsolete before it even left Bell Labs and it held back small-scale computing for years, and a book that interviewed some folks who worked on NT with him described him as considering Unix system design as his Moriarty a la Sherlock Holmes as well as considering it "a junk operating system designed by a committee of PhDs". steve ballmer pretty much got him on board by telling him it was a chance to write a microcomputer OS that scaled up to servers and minicomputing that would displace Unix. he doesn't do interviews really so it's hard to get first-hand accounts from the man he's probably a huge dick to work with/for but he did some phenomenal design and implementation work from the 70s through the 90s and even when he was managing the NT team he was still writing kernel code himself because he wanted to be hands-on. I think he still works at Microsoft on the Hyper-V team Kazinsal fucked around with this message at 08:26 on Feb 1, 2022 |
# ? Feb 1, 2022 08:24 |
|
some other dumb legacy PC poo poo: - the IBM PC/AT used an Intel 8042 microcontroller to replace the much more expensive Intel 8055 peripheral interface as a keyboard controller because they dropped the cassette interface that the 8055 was also responsible for. at that point the 2KiB of ROM in the 8042 was more than enough to handle decoding signals from the keyboard and converting them to scancodes, and there was a bunch of room left over in the ROM so they also shoved the A20 gate in there as well as a bit that was directly latched to the machine's RESET signal. the A20 gate was literally a "should this bit be respected or should it always be 0" gate on the 80286's 20th address pin. by default it was "always 0", so when a machine booted up its physical memory bus would behave exactly like an 8086/8088's. if you turned the gate on, the pin would be respected, but code that relied on the address space wraparound wouldn't work properly anymore and would actually gain access to another 65520 bytes of memory -- this became known in DOS parlance as the "high memory area". - modern systems either emulate the 8042 and a bunch of other legacy peripherals in System Management Mode or farm them off to a dedicated Super I/O chip. Super I/O chips are basically a PS/2-era peripheral chipset on a single low-cost ASIC and include a keyboard/mouse controller, parallel and serial ports, a floppy disk controller, IDE controllers, GPIO pins, and usually stuff like physical sensors for case temperature and case intrusion detection and fan speed control. National Semiconductor made most Super I/O chips and then sold that business off to Winbond, who still makes them to this day. - CD drives use SCSI internally, but SCSI bus controllers were goddamned expensive when CD-ROMs were becoming a thing, so the ATA/IDE bus standard got an extension called the ATA Packet Interface that was basically an encapsulation of the SCSI command set inside packets delivered inside ATA commands. a lot of early ATA/IDE CD drives were literally just SCSI CD drives with a chip on them to de-encapsulate the ATA command containing the ATAPI packet and send it to the SCSI controller on the drive, basically simulating a point-to-point SCSI "bus" in the process. the same packet interface ended up being used for tape drives, zip disks, magneto-optical drives, and other 90s-tastic removable media formats. SATA CD/DVD/BD drives still speak ATAPI over SATA, too, so decades later we're still using the same nasty hack that we were when CD-ROMs were new and saving $50 per machine by not implementing a proper SCSI bus was a worthwhile tradeoff - there's a reverse standard of the above called SCSI/ATA Translation but the only place it's used is when connecting SATA disks to SAS buses so even most people who know about the weird ATAPI poo poo and how it works don't even know it's a thing - anecdotally, the Windows kernel team told Intel to make resets via triple faulting on the 80286 faster after getting their hands on some engineering samples because they were using it as a hack to enable multi-tasking with MS-DOS programs under Windows/286, since the 286 didn't actually have a native way to return to real mode from protected mode. the Intel engineers didn't believe them at first until they showed them how it was working and they were reportedly both impressed and horrified enough to go back and do exactly that, so the Windows 2.x and 3.x kernels in 286 protected mode are constantly resetting the CPU. there's a vague reference to this in the 80286 programmer's manual and Larry Osterman has reported it to have been a meeting that actually happened so I'm inclined to believe it
|
# ? Feb 1, 2022 09:26 |
|
Kazinsal posted:- anecdotally, the Windows kernel team told Intel to make resets via triple faulting on the 80286 faster after getting their hands on some engineering samples because they were using it as a hack to enable multi-tasking with MS-DOS programs under Windows/286, since the 286 didn't actually have a native way to return to real mode from protected mode. the Intel engineers didn't believe them at first until they showed them how it was working and they were reportedly both impressed and horrified enough to go back and do exactly that, so the Windows 2.x and 3.x kernels in 286 protected mode are constantly resetting the CPU. there's a vague reference to this in the 80286 programmer's manual and Larry Osterman has reported it to have been a meeting that actually happened so I'm inclined to believe it sick
|
# ? Feb 1, 2022 09:35 |
|
|
# ? Feb 1, 2022 09:38 |
|
Kazinsal posted:I've never met the guy but DEC folks who worked with him said he thought the entire I/O and userspace processes/daemons model of Unix was obsolete before it even left Bell Labs and it held back small-scale computing for years, and a book that interviewed some folks who worked on NT with him described him as considering Unix system design as his Moriarty a la Sherlock Holmes as well as considering it "a junk operating system designed by a committee of PhDs". steve ballmer pretty much got him on board by telling him it was a chance to write a microcomputer OS that scaled up to servers and minicomputing that would displace Unix. he doesn't do interviews really so it's hard to get first-hand accounts from the man iirc he was also the architect for the os plumbing of azure, and it really should have been a lot easier to imagine a microsoft project that goes "lets make aws except on windows" to be a complete trashfire horrorshow. especially in the era the initial work was done. would be really interesting to hear more of what he has to say.
|
# ? Feb 1, 2022 11:55 |
|
eschaton posted:VMS has a very good I/O model, especially for running a multi-user system on what would be considered a paltry amount of RAM for a server even 25 years ago IIRC architecturally it's very nice, which means in practice it's slow, for the same reason STREAMS on System V was slow. Having lots of different layers of encapsulation looks lovely on a whiteboard in much the same way a microkernel looks nice in theory, but you end up paying for that. (Asynchronous by default, though, that bit's legit and I wish Unix had gone with that to start with)
|
# ? Feb 1, 2022 14:55 |
|
eschaton posted:my real VAXstation 4000 VLC has a whopping 24MB of RAM and while it’s not like it’s super fast, it’s perfectly serviceable for both single-user graphical login or multi-user network login, about the only downside is no direct SSH (since even with an implementation it’d likely be too slow and low-memory to negotiate a connection) ...my first PC at uni running Linux had 16 megs of RAM and that was actually twice what a low end system at the time would have. This was a time when EMACS was known as Eight Megabytes and Constantly Swapping because that was a lot of memory at the time. You can't fit ssh in 24 megs?!
|
# ? Feb 1, 2022 14:59 |
|
this is good poo poo
|
# ? Feb 1, 2022 15:57 |
|
feedmegin posted:...my first PC at uni running Linux had 16 megs of RAM and that was actually twice what a low end system at the time would have. This was a time when EMACS was known as Eight Megabytes and Constantly Swapping because that was a lot of memory at the time. you probably can but I wouldn’t expect a typical sshd to care enough about overhead to work within such limits the real issue there is CPU speed, it’s like 14 MHz, and I’ve seen comparable CPUs cause negotiation to time out
|
# ? Feb 1, 2022 16:53 |
|
Kazinsal posted:okay, time to talk about x86 memory management. this post is going to get a bit out of hand so I'm breaking it into sections. i did some of the validation for the ILB “Intel Legacy Block” on an Atom SoC, that is, the integration of the block into the SoC. the ILB handles a bunch of legacy boot flows and and this post is giving me flashbacks to reading ISA and PCI specs
|
# ? Feb 1, 2022 22:04 |
|
Lady Radia posted:i gotta hear stories come ONNnn just read UHH, probably
|
# ? Feb 2, 2022 07:24 |
|
JawnV6 posted:DEC teams survived long after the company itself went under, there were specific projects where decades later there was significant resistance to the intel way of doing things i'm curious to hear about what the differences were between the DEC way and the Intel way of doing things
|
# ? Feb 2, 2022 07:31 |
|
most 64-bit platforms are LP64, where long-integer and pointer types are 64-bit and the rest are 32-bit and there are safeguards like marking the first 4GB of the address space as not accessible and so on VMS on Alpha was and IA64 was essentially an ILP64 platform (which they described as IP64) where it just assumes that you know what you’re doing if quantities go over 32 bits, and thus has continued to the new x86-64 version also most of VMS is still written in VAX assembly language, but the DEC macro assembler, MACRO-32, is so insanely full-featured that they retroactively decided it was its own language and just wrote a new backend instead of rewriting (and the rest was written in BLISS-32, which is pretty much isomorphic to C, so that just needed a new backend too) for the new x86-64 version, they’ve rewritten the MACRO-32 et al backends one last time, for LLVM, so they could hypothetically target anything LLVM has a backend for, such as, say, ARM64 and here’s the thing: VMS itself was partially a port of the 16-bit PDP-11 operating system RSX-11, which was mostly written in MACRO-11, and the first few major VAX models had user-mode PDP-11 compatibility in hardware and many of the system utilities were the RSX binaries when the PDP-11 compatibility hardware was eliminated and the last utilities fully ported to MACRO-32 or BLISS-32, they just switched from hardware to software implementation of the compatibility and made it a layered product you could license and install in case you still had software you needed to run, and it still works on the final VAX version of VMS so, in essence, DEC did Intel/Microsoft backwards compatibility better and almost a decade earlier… there are still people mad that VMS 8.4 doesn’t support VAX, and there are more people mad that 9.1 is only for x86-64 instead of running on all of Alpha, IA64, and x86-64, on all the hardware those have ever supported (which, granted, 8.4 will run on the very first Alpha and Itanium, and 7.3 on the first VAX, so they have a better reason than most to be disappointed…)
|
# ? Feb 2, 2022 07:48 |
|
i read female dating strategies so I know lvm means low value male (or man) but llvm? no idea
|
# ? Feb 2, 2022 10:10 |
|
echinopsis posted:i read female dating strategies so I know lvm means low value male (or man) but llvm? no idea Low Level Virtual Machine, it's basically a bytecode of sorts that frontends like clang (a C/C++ compiler), llgo (a Go compiler), rustc (rust reference compiler) output instead of directly spitting out architecture-specific assembly, and then the LLVM core optimizes it and turns it into native executable code
|
# ? Feb 2, 2022 10:20 |
|
echinopsis posted:i read female dating strategies so I know lvm means low value male (or man) but llvm? no idea hahahahah
|
# ? Feb 2, 2022 10:25 |
|
low low value male
|
# ? Feb 2, 2022 10:32 |
|
sometimes I can't tell sincere echi posts from joke echi posts. poe's law in action
|
# ? Feb 2, 2022 10:42 |
|
is old (80s?) VAX hardware worth anything these days? I might have a chance to get a substantial pile of stuff basically free (3400/3300/3100 MicroVAXes + tape drives + printers + loads of accessories), but it's two hours away and means hiring a van, so i'd only do it if i can sell off most of it semi-quickly because i don't want it sitting in the garage for 5 years Sweevo fucked around with this message at 13:18 on Feb 2, 2022 |
# ? Feb 2, 2022 12:52 |
|
presumably it is worth something but really shouldn't be, at least not enough to offset even the ecological cost of a 4 hour roundtrip drive.
|
# ? Feb 2, 2022 12:56 |
|
it's only going to be worth something to the kind of people who are posting in a thread about DEC hardware in a subforum of a subforum on a dead gay comedy forum from 1999 so, unless you're in the greater vancouver area and you think it can all fit in the back of my BRZ, no, it's not really "worth" anything
|
# ? Feb 2, 2022 12:59 |
|
it belongs in a museum!
|
# ? Feb 2, 2022 15:24 |
|
~Coxy posted:just read UHH, probably
|
# ? Feb 3, 2022 01:00 |
|
Sweevo posted:is old (80s?) VAX hardware worth anything these days? You definitely won't be able to sell it quickly. Plus it's kind of scummy to pickup something for free solely to try and flip it to an enthusiast. Unix Hater's Handbook by Simon & Garfunkel https://web.mit.edu/~simsong/www/ugh.pdf
|
# ? Feb 3, 2022 05:30 |
|
|
# ? May 2, 2024 00:17 |
|
I WILL read this in part because i hate myself
|
# ? Feb 3, 2022 05:50 |