News for hackers. Stuff that matters.
Re:Lilith: x86-64 OS written in Crystal by ffwff on Monday December 23, 2019 @08:49AM (#21863544)
Sorry for the late reply (being rate limited)

Thanks! Originally it only started as an experiment to see how far I could go making an OS in a high-level (higher than C at least) language, I was only planning to build a monotasking DOS system. Around this time, Andreas Kling started to show us his SerenityOS, which was one of the factors propelling me to reach this point. So shout outs to AK!

Yeah! It's pretty fun to develop an OS, albeit time consuming. You should check out the osdev wiki and the Intel/Seagate manuals, they should hopefully get you to the point where your OS can read/write/execute files, you should also take a look at how other kernels do things as a reference and actually implement them in your OS in a way that fits.

Re:Lilith: x86-64 OS written in Crystal by dang on Monday December 23, 2019 @05:23PM (#21868027)
Sorry that your account was being rate-limited. It's software filters that do that, based on past activity by trolls. Unfortunately it also sometimes prevents project creators from showing up to discuss their work. I hate that!

We've marked your account legit so this won't happen again.

Re:Lilith: x86-64 OS written in Crystal by jchw on Monday December 23, 2019 @12:38PM (#21865317)
Oh, I have dabbled in OS dev a tad already actually, although not in a long time. I think if I went for OS dev nowadays, I’d prefer to try and start as an EFI binary because I believe that way you get to start directly in long mode, and have some filesystem drivers to bootstrap with at least. Still, I don’t know if I will ever have the drive (and spare time) to push it as far as you have gotten Lilith.
Re:Lilith: x86-64 OS written in Crystal by z92 on Monday December 23, 2019 @09:06AM (#21863638)
When does GC kick in during the boot sequence? And how are you managing memory? Is the whole OS mark and sweeped?
Re:Lilith: x86-64 OS written in Crystal by ffwff on Monday December 23, 2019 @09:30AM (#21863763)
Right after the global descriptor table is setup and paging is enabled, the GC is then enabled. On every allocation, and whenever the os has no task available to switch to, a gc cycle is performed.

Not really, the kernel and any process written in crystal has a garbage collector, any other userspace process can manage memory however they want to.

Re:Lilith: x86-64 OS written in Crystal by akling on Monday December 23, 2019 @02:50PM (#21866682)
Hey ffwff, amazing work and pace on Lilith so far! I'm honored to have inspired you :)
Re:Lilith: x86-64 OS written in Crystal by sudo_rm on Monday December 23, 2019 @11:11AM (#21864564)
How much experience do you have in OS dev before you jumped into this project?
Re:Lilith: x86-64 OS written in Crystal by crazypython on Monday December 23, 2019 @10:44AM (#21864301)
I wonder what a D OS would be like.
Re:Lilith: x86-64 OS written in Crystal by tyler569 on Monday December 23, 2019 @11:41AM (#21864824)
Re:Lilith: x86-64 OS written in Crystal by skocznymroczny on Tuesday December 24, 2019 @09:30AM (#21872271)
Latest commit bcb6cf9 on Mar 2
Re:Lilith: x86-64 OS written in Crystal by unixhero on Monday December 23, 2019 @04:57PM (#21867810)
The plot thickens.