lentement has quit [Remote host closed the connection]
<zid>
The "Yes, I am talking to you" "No you're not" energy in that 'forgetting the history of unix' article's reddit comments in incredible
<childlikempress>
i would simply not read the reddit comments
<zid>
I wanted to see if anybody had a good take, they didn't, but I at least found it funny
Maja has quit [Ping timeout: 252 seconds]
Maja has joined #osdev
lentement has joined #osdev
lentement has quit [Ping timeout: 260 seconds]
<zid>
nortti: I've been rationing them and I'm still running low already, sadface
FreeFull has quit [Ping timeout: 272 seconds]
xenos1984 has quit [Read error: Connection reset by peer]
navi has joined #osdev
gbowne1 has quit [Quit: Leaving]
gog has joined #osdev
xenos1984 has joined #osdev
pretty_dumm_guy has joined #osdev
lentement has joined #osdev
GeDaMo has joined #osdev
Cindy has quit [Ping timeout: 260 seconds]
zetef has joined #osdev
GeDaMo has quit [Ping timeout: 272 seconds]
GeDaMo has joined #osdev
Cindy has joined #osdev
Cindy has quit [Ping timeout: 240 seconds]
<nikolar>
:(
<gog>
:(
nur has joined #osdev
<nikolar>
Hello gog
<nikolar>
How's work
<gog>
webdev
Cindy has joined #osdev
<gog>
there's this component which i must use that behaves in stupid and unintuitive ways that affect the UX i'm trying to deliver
<gog>
i'm reading the fucking source code and while it's well-organized it has some questionable choices about how it responds to events
<gog>
i just want it to do one thing without retriggering a callback
<nikolar>
Eh if it's any consolation, I'm trying to figure out why one of our microservices fails with a runtime import error when running inside a container but it's perfectly fine outside of a container
Left_Turn has joined #osdev
<gog>
i hate that
<nikolar>
Yes
lentement has quit [Remote host closed the connection]
<bslsk05>
wiki.factorio.com: Tutorial - Factorio Wiki
<zid>
anywhere and everywhere, the FACTORY MUST GROW
<FireFly>
but you're saying it isn't :p
<zid>
Nope, it's definitely mis-named, that's the primer
<FireFly>
hence the confusion
<zid>
You can tell when you've finished the tutorial when the hints stop popping up ingame
<FireFly>
well, I'll see if I get back into it Someday I guess
<zid>
GeDaMo: If you wanna play it vicariously instead, watch doshdoshington's videos
<zid>
they're edited down and he's delightfully miserable sounding at the injustice of having to do all the playing while you get to do all the watching
sbalmos has quit [Ping timeout: 255 seconds]
<GeDaMo>
Is that your pseudonym? :P
<zid>
(he also has a review of every zachtronics game, and a review of La Mulana, oddly)
sbalmos has joined #osdev
<nikolar>
great channel
<nikolar>
watched his la mulana video yesterday
<zid>
I love factorio, la mulana, and zachtronics games
<zid>
and misanthropes
<zid>
I want to marry him
<nikolapdp>
you already asked me to marry you zid
<nikolapdp>
zoo late now
<zid>
not too late until the dowry is deposited
Turn_Left has joined #osdev
Left_Turn has quit [Ping timeout: 246 seconds]
<adder>
What does a kernel need to do in order for third-party C/C++ programs to be able to allocate and free memory?
<gog>
if you're reimplementing unix poorly, you need mmap()
<gog>
which means a syscall entry point
<zid>
provide a syscall
<gog>
and a way to dispatch them
<zid>
which can somehow give it access to new memory
<zid>
mmap/brk/whatever
<zid>
which it then feeds to its malloc (this will required porting the libc), which slices it up and hands it out
<zid>
s/required/require
<adder>
Porting libc sounds like a lot of work?
<nikolapdp>
yes
<zid>
It may be nearly 0 work, though
<zid>
if you give it the exact interface of what you stole it from had: i.e linux's
<nikolapdp>
kek yeah
<nikolapdp>
but that just moves the work into the kernel
voidah has joined #osdev
<zid>
It's work the kernel has to do regardless, eventually.. unless you're going in a completely different direction
<nikolapdp>
true
<adder>
So if I e.g. take a MINIX-compliant libc, and as long as I expose identical interface, all plays out?
<zid>
It's like that "Any sufficiently complicated program has an implementation of an ad-hoc version of lisp in it"
<zid>
You're going to end up with a mmap once you get complicated enough
<zid>
even if it's called VirtualProtectEx or whatever instead
<nikolapdp>
mmap is kind of universal so you'll end up implementing it no matter what else you do
<zid>
there's an echo in here!
<nikolapdp>
oh lol i missed that
<adder>
I'm chipping away at the book at a quite rapid pace and supplementing by reading MINIX source to see how things are actually done.
<kof123>
> C/C++ programs to be able to allocate and free memory? ansi c or posix? :D this is not to nitpick, it is to say, c89 has a malloc() .....how that actually works...well......something gives you a pointer
<adder>
It's my understanding that there needs to be an OS underneath in order for malloc to work.
<mcrod>
hi
edr has joined #osdev
<kof123>
yes, generally, but if you aren't using hardware memory protection.....at the asm/c/"bare metal" level.... anything can point anywhere, attempt to jump to anywhere....unless you have some other mechanism to enforce protection.........such is easier with a vm/bytecode, then the vm/interpreter could enforce such things
<nikolapdp>
hello mcrod
<mcrod>
hello nikolapdp
<kof123>
+* attempt to read or write to anywhere
heat_ has joined #osdev
<kof123>
that is not to say you should do that, just "stack" "heap" ...at that level there is just a RAM free for all by default/at inception
<kof123>
"what's in there? <points at cave>" "only what you bring with you"
xenos1984 has quit [Read error: Connection reset by peer]
Yoofie8 has joined #osdev
<adder>
Alright. I suppose I'll cross that bridge when I come to it.
<Cindy>
malloc has a few layers, from a library i reverse engineered
Yoofie has quit [Ping timeout: 260 seconds]
Yoofie8 is now known as Yoofie
SanchayanMaity has quit [Ping timeout: 256 seconds]
<Cindy>
malloc() -> C library (maintains some kind of memory pool) -> OS -> hardware
SanchayanMaity has joined #osdev
jbowen has quit [Ping timeout: 268 seconds]
lentement has joined #osdev
SanchayanMaity has quit [Ping timeout: 264 seconds]
xenos1984 has joined #osdev
jbowen has joined #osdev
rorx has quit [Ping timeout: 246 seconds]
SanchayanMaity has joined #osdev
nohit has quit [Ping timeout: 246 seconds]
ecs has quit [Ping timeout: 260 seconds]
ecs has joined #osdev
thaumavorio_ has joined #osdev
thaumavorio has quit [Read error: Connection reset by peer]
nohit has joined #osdev
rorx has joined #osdev
jbowen has quit [Ping timeout: 264 seconds]
vdamewood has quit [Read error: Connection reset by peer]
vdamewood has joined #osdev
ecs has quit [Ping timeout: 246 seconds]
jbowen has joined #osdev
heat has joined #osdev
heat_ has quit [Ping timeout: 256 seconds]
antranigv_ has joined #osdev
antranigv has quit [Ping timeout: 240 seconds]
rorx has quit [Ping timeout: 246 seconds]
antranigv_ is now known as antranigv
ghostbusters2 has quit [Ping timeout: 256 seconds]
rorx_ has joined #osdev
jbowen has quit [Ping timeout: 246 seconds]
<nikolapdp>
apparently netbsd supports zfs
<nikolapdp>
definitely didn't expect that
klange has quit [Ping timeout: 260 seconds]
GreaseMonkey has quit [Ping timeout: 264 seconds]
lentement has quit [Remote host closed the connection]
<heat>
how
lentement has joined #osdev
<heat>
all of the BSDs are exquisitely similar
<heat>
i'd be surprised if there are even considerable differences between the interfaces the driver needs to implement
ghostbusters2 has joined #osdev
<nikolapdp>
heat: how what
jbowen has joined #osdev
<heat>
how would they not support it
<nikolapdp>
i mean zfs is kind of a beast and netbsd isn't exactly a large project
klange has joined #osdev
<heat>
i could port zfs if i wanted to (i don't want to)
phoooo has joined #osdev
phoooo has quit [Client Quit]
<nikolapdp>
heat out of curiousity, if someone else ported it, would you accept that
lentement has quit [Remote host closed the connection]
ramenu_ has quit [Ping timeout: 256 seconds]
pretty_dumm_guy has quit [Quit: WeeChat 3.5]
deriamis has quit [Ping timeout: 246 seconds]
<heat>
as long as i don't have to use it or maintain it