Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
AquilaOS: Posix Compliant/mostly ISA Transparent Operating System (aquilaos.com)
90 points by ingve on May 14, 2018 | hide | past | favorite | 26 comments


It's good to see an operating system begun with the idea that all of the terminal emulation for a console belongs in application space not the kernel. In case you are interested:

* http://jdebp.eu./Proposals/linux-console-daemon.html

* http://jdebp.eu./Softwares/nosh/user-vt-screenshots.html

* http://jdebp.eu./Softwares/nosh/guide/user-virtual-terminals...

* https://unix.stackexchange.com/a/177209/5132

* https://unix.stackexchange.com/a/178807/5132


How did you come up with the name Aquila? Love it. New Testament or the Latin/Roman angle?


I love stargazing, and I can name every constellation in the northern sky hemisphere, Aquila looks awesome (and OrionOS would have sounded weird :"D)


Love it!


Why does it have to be religion related? It just means "eagle" in Latin/Roman languages.


> or the Latin/Roman angle?

I think the parent thought of that.


To me it sounds like Tequila


If it comes from Latin (as it seems to be) the stress is on the A and you should pronounce it something like ah-qui-lah (with the "qui" sounding something like "quick").

But I'll wait for the author to correct me :)


Wow that’s a lot of work. What motivates these projects? Just the cool factor?


"Hobbyist Operating System, just for the heck of it".

Some people really get a good kick out of doing hard things for the heck of it. I did a fair share of it in my day, it is good fun. :)


It's make me sad to read this kind of questions in "Hacker" News.


It’s not a disparagement, just genuine curiosity.


Practicing your craft? Honing your skills? Keeping sharp? Exploring domains you can't necessarily get support to work on at the day job? Something to feature on your resume and demonstrate/discuss in your next interview?


All of the above in my case. I realised a while back that I’m missing some fundamentals due to having come into the industry via being self taught. To deal with that I’m currently working through NAND to Tetris, to get a grounding in how CPUs, compilers, and VMs work. After that I’ll probably find a good book on algorithms to work through, and then maybe (if I’m feeling adventurous) attempt an OS myself.


Learning how things work under the hood is also an important factor, but mainly for cool factor, yes :"D


At last I knew, my alma mater had every CS major write a compiler in one class and an OS in another. It’s a very good aymto round out the degree.


Any CS degree worthwhile taking should have such projects.


can someone explain ISA Transparent?


ISA transparent means that the kernel parts are completely independent of CPU architecture, you still need (minimal) architecture dependent code but it is isolated in "arch/" directory in the kernel source. This is mainly to avoid #ifdef __i386__ /* Code here */ #endif found in Linux. Also it makes porting the kernel easier.


Unfortunately it's a bit much to say that it's ISA independent given that it only supports 332bit x86 currently.


I do agree that it's a stretch to claim that it's ISA independent without much proof to show it. However, I have reviewed many architectures while designing it and made sure (up to my skill of course) that the design would fit as many architectures as possible. You may check the code base yourself, I'd be happy to be corrected and/or enlightened, after all, that's the beauty of open-source projects


I am guessing it means that binaries native to the OS has only one instruction set which the kernel JITs onto the local CPU. That ISA might be some byte-code, or else are in a well known ISA (such as x64) which gets translated at need.

Another possibility is that the kernel supports multiple source ISAs and translates them at need.


I think that's a bit of a stretch of the imagination, how did you get to there?

From the forum posting at https://forum.osdev.org/viewtopic.php?f=2&t=32714:

  * Arch:
  - x86 32bit (though the kernel is designed to be ISA 
    transparent, arch. dependent parts are handled with 
    arch_ stubs)
Given that it's written in C, it presumably means that the architecture specific code is abstracted behind an API. No different to Linux AFAICS.


Calling portable source ISA independent is strange.

Architecture independent binaries plus JIT or install time compilation is the first thing I would have thought as well.


The term is contextual in kernel development, ISA dependent kernel would be designed around the architecture (for example, ToaruOS, a great OS and one of my inspirations, is designed around x86, working closely to the architecture, which has always been the developer's intention).


Maybe you can run it on different architectures like arm or mips?




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

Search: