Pinned toot

#introductions 

An introductions post, since I've got a bunch of new followers in the last couple of weeks (hello everybody!)

By day, I do computer verification of in the Lean prover, by night I do . When there isn't a plague going around, I like in nature and befriending . I also know a bit of .

I really like explaining concepts — feel free to ask any question (esp. mathematics / theoretical comp sci). Replies to toots are always welcome.

Pinned toot

(of course, my gender is just a temporary situation until my Glorious Lisp OS-powered Robot Body finally is usable in daily life!)

Show thread
Pinned toot

ME, ONE YEAR AGO: this mexican party is good, but it has... how can one say ... too many people? there are in fact, only so many people one can dance with in the course of a party. I think I'm right in saying that, aren't I?

MY WIFE: this is absurd!

ME: my dear, don't take it too hard. it's quality celebrating. there are simply too many people. just remove a few, and it will be perfect.

MY WIFE: which few did you have in mind?

Pinned toot
Pinned toot

trans randomposting 

@Vierkantor oh i DEFINITELY get that. Genderqueer is such a cool word but the flag just doesn't have the vibe that the enby flag has. it's a struggle

solution is use both lol

brand™ 

in this country, the more seriously people take linkedin, the more cursed their pronunciation is:

- "i don't want to make an account for [lɪŋgdˈɪn]"
- "people try to interact with me on [ˈlɪŋkt.ɪn]"
- "i love spending time with [ˈlɪŋ.kəˌdɪn] pages"
- "i am a professional thought leader on my [lɪŋˈkɛd.ɪn] internet website"
- "hello i am Gerrit [laɪŋk.dɪŋ], inventor of the [laɪŋk.dɪŋ] dot site webcom page internet"

demigenderqueer (i call myself genderqueer but prefer the nonbinary flag)

controversial opinion: "PID" means principal ideal Domain, "pid" means process identifier

Ok, this might actually work: replace the current userspace function header with `if top_kernelstack < sp < bottom_kernelstack: panic("don't call userspace functions from the kernel!") # this is a cheap check that doesn't read system registers' declare a new function header doing exactly the opposite, then assign each function to the appropriate side of the divide. (Duplicating or adding a kernel->user call gate.)

Once everything works again, replace the usermode stack implementation.

Show thread

Looking through kernel code, there isn't actually much, if any, userspace code being called while a memory lock is held (this makes sense: userspace code is allowed to do allocations!). It might just be possible to implement saguaro stacks without too many headaches.

Show thread

new plan for training my arm muscles: replace the fidget toys on my desk with a dumbbell

when did windows 10 come out anyway? like 2013?

misinfo 

&nbsp; stands for non-binary space

math nerds... 

I ran into this video:

youtube.com/watch?v=-k3mVnRlQL

Which I think is pretty, cool little robot, mini warehouse. Neat the cameraperson crawls in there for the shots. Neat.

But then I think the website, and there's for one some really cool klein bottles on there. But also some hilarious marketing in my eyes. I love the low key style.

kleinbottle.com/

I think it's charming :)

#math #engineering #hacker

Or! I can just set up multiple allocation arenas and ensure the kernel never locks its own arena. But that's hard :(

Show thread

Hmm, what if the rule is "before grabbing the memory lock, you must reserve a bunch of stack frames" and "when creating a stack frame, if the memory lock is held (therefore you are in the kernel), use one of the reserved frames instead"

Show thread

Alternatively, microkernelize the system further and move all stack-related stuff to a userspace process.

Show thread

The main issue: the kernel needs a stack but can't always allocate memory, e.g. at startup when memory isn't initialized yet, or when the garbage collector is running. Allocating a traditional stack for the kernel is not an issue on the continuation level. However, the kernel and userspace share a codebase. So I guess I have to dynamically determine how to deal with the stack? Seems awkward...

Show thread

My plan is to allocate stack frames just like all other allocations, so continuations can just store a pointer to the top stack frame rather than a whole copy of the stack. (In other words, I want to switch to saguaro stacks.)

Show thread

Current hypothesis: `message:match-receive!' does a lot of recursion, so it might cause a stack overflow.

I might actually just end up replacing the stack model, instantly fixing continuations in the process!

Show thread

(It also works for other keys, as long as you hit them really quickly. A long "a" is just the funniest.)

Show thread

Bug that I just discovered in my OS: typing "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" really quickly in the editor can cause a kernel panic.

Show older
Vachtnoes

Mastodon is a server for a federated social network: everyone can run a server if they want to, including me. So this is a Mastodon server for me (Vierkantor) and my friends.