Welcome, brother. But remember that they must walk the path themselves or they will never reach true understanding.
BartyDeCanter
- 1 Post
- 242 Comments
The old masters did not have fuse and there are more devices than your SSD. Write a log formatted filesystem for an SPI flash chip, and move your fuse-based system onto a HDD. Then the next path will be revealed.
In the end, we are all files. We have our read()s and write()s, in in our time we play many offsets.
Don’t leap ahead, or you will come to a false conclusion. Write a filesystem, then write another using a completely different approach for a system without a kernel. Then run them on each others targets. Only then will your mind be clear enough to see.
You are almost ready to take the next step. But to do so, you must unlearn what you think you know. Write a filesystem that does not have blocks for a media without pages, and you will find the footprints of your next teacher.
Stages of POSIX enlightenment:
- It couldn’t possibly all be files
- It’s all files
- What is a file, anyway?
- There’s no such thing as a file
- It couldn’t possibly all be files
- Everything is a file
Most people stop at stage 2, stage 3 hits when you decide to write a filesystem, stage 4 when you’ve finished your first filesystem. Stage 5 is when you start working on kernel internals. No one can tell you how to reach stage 6, you must discover it for yourself.
BartyDeCanter@piefed.socialto
science@lemmy.world•Emmanuel Mignot wins Lasker Award for narcolepsy researchEnglish
1·4 days agoN2 here. It was mild all my life, down at the “quirky” level, so I wasn’t diagnosed. Everyone who had ever lived with me knew something was weird with how much I slept, but not enough to be a concern.
Then a year and a half ago it ramped up to devastating over the course of a couple weeks. I lost my job but luckily was able to find a new, less stressful one. After cycling through multiple sleep doctors and multiple tests that take months to get, I’m finally on two daytime meds. They help, but nowhere near enough. I have another in December and then hopefully I can get on Xyrem and/or oveporexton.
Anyway, I just want to say I get it, it sucks how much of your life it takes away, and I hope that better treatments are found for all of us.
I spent a few months researching and trying to come up with a non-tree based approach for the FS I’m currently working on and just could not come up with anything that didn’t end up back at the equivalent of a directory tree. I do think tags are very useful though, so I’m working on a richer version of the BeFS attribute and query system that should have better performance on SSDs as well a few other nifty features.
The closest production system to that I’ve seen is IBM i libraries, or maybe the failed WinFS.
The problem is that without namespacing, how do you tell one
READMEfrom another? And once you have a unique namespacing system, you’re basically back to a tree with extra steps. Sure, from the FS POV, you could keep everything in a flat space with uniqueness determined by inode or a UUID but those aren’t very human friendly.
Go for it! If you like designing low level data structures it’s a lot of fun, and a userspace RAM or file backed filesystem via FUSE is surprisingly approachable.
A drive is just an addressed linear memory space, like RAM, though with physical characteristics that you need to be aware of if you’re designing a useful file system.
The real difficulty is that the address space is huge, and you can’t trust that data that you write it won’t get cut off in mid write or get some bits flipped while it’s just sitting there. That makes designing the data structures that make up a “file” difficult.
If you really want to know, I highly recommend reading Piratical File System Design with the Be FS - Dominic Giampalo as a free PDF. It goes into enough detail that you absolutely can write a modern filesystem based on just what is in it, including good diagrams and code snippets, but it doesn’t just have page after page of code to wade through. It’s a surprisingly enjoyable read.
If you don’t know, Dominic is the author of the Be FS (obviously) but ended up at Apple and was a lead in their filesystem team for two decades. He also has the most perfect minimal personal webpage I’ve seen in a long time.
I’ve developed two filesystems, and am working on a third. I wish I had read that book before I started on my first one.
BartyDeCanter@piefed.socialto
Linux@lemmy.ml•Which distros are visually and/or have user interfaces/experiential sensibillities/idioms akin to Windows/MacOS/("pure") Linux as distinct from the other 2 major OSs?English
1·11 days agoIf you want to have a fun “before times” theme, try something BeOS flavored. Or go really obscure and try to find one that matches the Dano leak.
BartyDeCanter@piefed.socialto
Linux@lemmy.ml•Which distros are visually and/or have user interfaces/experiential sensibillities/idioms akin to Windows/MacOS/("pure") Linux as distinct from the other 2 major OSs?English
4·11 days agoHi! I’ve been seeing your questions here and I think some basic terminology and background will help you out.
I’m going to try and avoid too much “whell acktully”, but there will probably be some.
A kernel is the core of any operating system, it usually provides basic hardware support for programs to use, and in the case of Linux, hardware drivers, filesystems, low level networking protocols and other very close to the hardware support.
But a kernel can’t really do anything by itself, so we run programs on top of it. Some of these are also very low level and most people don’t deal with them or know they are there, while others are things like web browsers, video games, and whatever else you directly use every day.
For Linux, there are often multiple programs that provide the same or similar functionality, with different features and tradeoffs, at all levels of the system. With Windows or Mac, there is often only one version of the low level programs that they provide and you never know is there.
Because of all the options, different groups have put together different sets of these programs together, along with configuration files, and installer programs. These are called distros, short for distributions. Different distros make different choices for at least as many reasons as there are distros. Also in Linux, a program plus whatever files it needs are often called packages.
Since even a small distro may contain thousands of packages, management of them is very important. Most distros have a package manager program to help deal with that and the package manager is how you will install most packages, though as always there are other options. A package manager is similar in some way to an app store from Mac or windows, only not shitty.
Some distros make a lot of package choices for you, others make you make basically every choice. Most are somewhere in between. So-called beginner distros are usually ones that have made all the choices for you, and aimed those choices at being easy to use for people that have only experienced Windows or Mac.
A desktop environment is an integrated graphical interface that has a bunch of programs that all work together and have a similar look and feel. You may also hear about a window manager, which is like a very minimal desktop environment that doesn’t come with a lot of features by itself.
Different distros provide different desktop environments by default, or maybe none at all! Some make it very easy to switch from one to another, but some don’t.
Most DEs try to look like either Windows or Mac in order to feel friendlier to new users. Window managers generally don’t, as they are assumed to by used by people with a lot of experience who want something very specific and will take the time to make it happen.
Some common DEs and what they sorta look like are:
- Gnome - Looks a lot like Mac, not particularly customizable, good keyboard only support
- KDE - Looks a lot like windows by default, but quite customizable.
- Cinnamon - Also looks like Windows, but forked off of an old version on Gnome a long time ago
- LXDE - Also looks like windows by default, often used on very low end hardware
- Cosmic - Looks like Mac but very customizable
And here are some common distros and their default DEs
- Fedora - KDE
- Mint - Cinnamon
- Debian - Offers a choice, but defaults to Gnome
- Ubuntu - A custom version of Gnome, but also comes in a KDE and LXDE version
- PopOS - Cosmic
I hope this helps!
BartyDeCanter@piefed.socialto
Ask Lemmy@lemmy.world•Is everybody just struggling financially right now?English
11·12 days agoFinancially? No, I’m doing pretty well, having made a lot of boring but good long term decisions, gotten a few lucky breaks, and had the sort of career where I’ve always been able to find a new job when I needed to. Though with the rise of LLMs that may not be true in a few years.
Health wise though? Fuck. And the mental fallout from that sucks.
BartyDeCanter@piefed.socialto
Dull Men's Club@lemmy.world•I cleaned up a nice leathertop desk I got for cheapEnglish
2·12 days agoWow! That is gorgeous!!
BartyDeCanter@piefed.socialto
Linux@lemmy.ml•CERN Transitioning Industrial Computers To Debian After Being A Longtime RHEL InstitutionEnglish
164·12 days agoWow! I could not have asked for a better example of this. The quick insult that might just be a simple attack on my intelligence but might also have a specific in-group meaning? It’s perfect! chef’s kiss
You sir/madam/theydam have made my day. I salute you.
BartyDeCanter@piefed.socialto
Linux@lemmy.ml•CERN Transitioning Industrial Computers To Debian After Being A Longtime RHEL InstitutionEnglish
225·12 days agoHave you ever had the experience of having a short conversation with someone but you can’t figure out what they mean? Like, the words they are saying make sense, and you can parse their sentences, but the meaning is incomprehensible?
Then you realize that they are part of a religion, political ideology, or some other subculture that you’re not deeply familiar with and it’s pretty clear that you just glimpsed 1% of the mental framework that they operate in, but because you don’t know what the other 99% is you can’t figure out if you agree, disagree, or just learned something?
Have also ever noticed that they tend to get Real Mad when you ask them question because the conversation quickly switches to in group/out group dynamics and you just revealed that you’re not in whatever group they are? And they also probably have very specific definitions of words and phrases as part of their mental framework that you don’t know, so both sides completely misunderstand each other?
Anyway, what I’m trying to get at is, what the fuck are you talking about Jessie?
BartyDeCanter@piefed.socialto
Linux@lemmy.ml•30 Days of Ubuntu on a ThinkPad X13 Yoga: What worked vs. what broke for video creationEnglish
2·13 days agoI’m not certain of the last time I had hardware where sleep didn’t just work in Linux. It’s fine in my oldest laptop that only has limited hardware support for sleep modes and extremely good on everything else.

Eh, there are distros where you will never need to touch a command line if you don’t want to. In fact, most modern mainstream ones are that way: Mint, Fedora, Ubuntu, etc.
Though I don’t understand the fear of the command line. My grandmother owned two computers in her life and both of them were command line only. She was not a researcher at a university, a professional programmer or anything like that, just a normal person with a high school education.
She just wasn’t afraid to read the manual and try things. I still remember the spiral-bound manual with post-its covered in her nurses shorthand.
She used them to run the books for the family business, first an Apple ][, then a PC running DOS. She also used them to write letters and the church newsletter, practice Bridge, organize her family genealogy work, and things like that.