In university, one of my projects in Operating Systems was to build a file system.
I'd recommend anyone to do the same!
It does not have to be anything magical...just try to build a basic program that can emulate a file system (read files, write files, list files, have links, edit files, edit names, delete files, copy etc.)
The aim here is NOT to have a file system that you'll use daily, but to understand the concepts by programming them.
While this book goes into some details about it [0], I "understood" how it all worked together by building one.
FYI - I think the book focuses on C when giving examples, but if you know the concepts, it can be built in any language (Go, Java etc.)
I'd recommend anyone to do the same!
It does not have to be anything magical...just try to build a basic program that can emulate a file system (read files, write files, list files, have links, edit files, edit names, delete files, copy etc.)
The aim here is NOT to have a file system that you'll use daily, but to understand the concepts by programming them.
While this book goes into some details about it [0], I "understood" how it all worked together by building one.
FYI - I think the book focuses on C when giving examples, but if you know the concepts, it can be built in any language (Go, Java etc.)
[0] - https://www.amazon.com/Operating-System-Concepts-Abraham-Sil...