I needed a break from Real Work, so I'm speedrunning writing a Unix-ish operating system
Day 3
Drew DeVault
I needed a break from Real Work, so I'm speedrunning writing a Unix-ish operating system Day 3 180 comments
char *lotte; :v_trans: :v_bi:
@drewdevault anything (non-trivial) that can be done with a regex, should be done with a regex
Jeroen Massar
@drewdevault but why the f is it there? ;) (I can only assume because at the moment it is quicker than solving the problem the "correct" way ;) )
R. L. Dane :debian: :openbsd:
Lemme guess, "just a little hobby project, won't ever be as big as MINIX, only supports AT harddisks right now because that's all you have?" 😂
mort
@drewdevault Wait you implemented ext4? I assumed that for this kind of project you'd make a baby's first file system style thing like we did in OS class in uni...
Borjan Tchakaloff
@drewdevault inspiring! At this rate you'll have the laptop on the Internet by next week Side note: you definitely need to label your white marker on one of these alt texts 😁 "WXGA whatnot"
Drew DeVault
End of day 4: ext4 works but needs to be integrated into the filesystem abstraction (which also needs to be fleshed out) Maybe VFS tomorrow?
Dušan 🇷🇸 :arch: ⚛️
@drewdevault Of course, just the idea of files having different entries in the FS table, but pointing to the same underlying data on disk is still something I find a little bit like black magic. 😂
Steven Reed
@drewdevault I never really used DOS/Windows much, and I don't remember delving deeply into filesystem internals on the Amiga or Beeb, so Linux was my first exposure. Inodes therefore always seemed very natural, and meant FAT confused the hell out of me...
Henri
@drewdevault First had to learn what they were when a drive ran out of them and I had to reformat.
Drew DeVault
Work progresses on integrating ext4 with the Bunnix filesystem API This screenshot brought to you by fs::* rather than lwext4::*
Drew DeVault replied to Drew
I have a (shitty) VFS That's probably it for day 5, I have other things to do today 🙂
Drew DeVault replied to Drew
What's probably next is fleshing out the VFS a bit, then getting to userspace and implementing a few syscalls
Noodlez :nixos: :neovim: replied to Drew
@drewdevault Dude you're amazing. I've been stuck on just memory management in my hobby kernel for like 6 months now (although truthfully like 6 hours I barely get to work on it), and here you are just pumping out a kernel like it's nothing.
Drew DeVault replied to Noodlez :nixos: :neovim:
@noodlez1232 I've done this a few times already, experience makes it easier :) and I still struggle with memory management! In a way it's the hardest part imho
Drew DeVault replied to Drew
Day 7, taking a break to hang out with a friend who's in town, more to come tomorrow
BIG KRIMPIN replied to Drew
@drewdevault but Drew, tomorrow is kingsday, you can't miss out on kingsday!
Drew DeVault replied to Drew
Day 8: let's write a System-V loader and get to userspace also: don't write a USB driver don't write a USB driver don't write a USB driver
Drew DeVault replied to Drew
Day 8 was all about getting userspace online. We are loading ELF programs, jumping into userspace, and we have working interrupts and syscalls Day 9 will start implementing more useful syscalls and fleshing out I/O
Jeroen Massar
@drewdevault yeah, do print out a screenshot, in 30 years you will still be thinking about "I needed a break from Real Work" ;) |
@drewdevault Okay that sounds really cool (and fun). I'd love to learn more about it at some point :)