klange changed the topic of #osdev to: Operating System Development || Don't ask to ask---just ask! || For 3+ LoC, use a pastebin (for example https://gist.github.com/) || Stats + Old logs: http://osdev-logs.qzx.com New Logs: https://libera.irclog.whitequark.org/osdev || Visit https://wiki.osdev.org and https://forum.osdev.org || Books: https://wiki.osdev.org/Books
heat_ has joined #osdev
heat has quit [Read error: Connection reset by peer]
heat__ has joined #osdev
heat_ has quit [Read error: Connection reset by peer]
gildasio has quit [Remote host closed the connection]
gildasio has joined #osdev
eddof13 has quit [Quit: eddof13]
lg has quit [Ping timeout: 264 seconds]
agent314 is now known as wow_rust
wow_rust is now known as agent314
[itchyjunk] has quit [Remote host closed the connection]
[_] has joined #osdev
pebble has joined #osdev
Left_Turn has quit [Read error: Connection reset by peer]
lg has joined #osdev
<gorgonical> Am I doing something wrong if my cross-compiled musl ld.so has a loadable segment at 0x0 vaddr?
<Mutabah> I think that indicates a relocatable object?
<Mutabah> i.e. your loader should pick a location...
<gorgonical> No but the ld.so itself
<gorgonical> Yeah typically it indicates pic/pie but what about in the case of the loader itself? glibc shows the first program header at 0x40 vaddr, but musl's is at 0x0
agent314 has quit [Remote host closed the connection]
<zid`> I got whammed :(
<zid`> a non-pie ld.so would be funner to use
<zid`> "Nope, it's where your executable is already loader, get rekt nerd"
<zid`> loaded*
pebble has quit []
heat__ has quit [Remote host closed the connection]
goliath has quit [Quit: SIGSEGV]
heat has joined #osdev
gorgonical has quit [Ping timeout: 276 seconds]
skipwich has quit [Quit: DISCONNECT]
skipwich has joined #osdev
edr has quit [Quit: Leaving]
srjek|home has quit [Ping timeout: 276 seconds]
pretty_dumm_guy has quit [Quit: WeeChat 3.5]
Arthuria has joined #osdev
heat has quit [Ping timeout: 256 seconds]
sbalmos has quit [Ping timeout: 255 seconds]
sbalmos has joined #osdev
vdamewood has joined #osdev
[_] has quit [Remote host closed the connection]
[_] has joined #osdev
vdamewood has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<klange> my ld.so is non-pie; loads to a fixed 0x3f000000 because reasons
sprock has quit [Ping timeout: 268 seconds]
sprock has joined #osdev
antranigv has quit [Quit: ZNC 1.8.2 - https://znc.in]
antranigv has joined #osdev
heat has joined #osdev
<heat> dang, gorgonical is gone
<heat> <gorgonical> Am I doing something wrong if my cross-compiled musl ld.so has a loadable segment at 0x0 vaddr?
<heat> no
<heat> the way elf works, p_vaddr and p_offset must be congruent
<heat> so vaddr 0x40 offset 0x40 effectively is vaddr 0 offset 0
<heat> and the two are kind of interchangeable
<heat> usually for regular ELF files one of the restrictions is that the program headers need to be mapped in some segment
<heat> and they're usually at file off 0x40 (sizeof elf64_ehdr), hence 0x40, but AFAIK nothing stops you from just mapping off 0
foudfou has quit [Remote host closed the connection]
foudfou has joined #osdev
vdamewood has joined #osdev
antranigv has quit [Quit: ZNC 1.8.2 - https://znc.in]
antranigv has joined #osdev
pebble has joined #osdev
vdamewood has quit [Ping timeout: 246 seconds]
[Kalisto] has quit [Read error: Connection reset by peer]
skipwich has quit [*.net *.split]
lg has quit [*.net *.split]
catphish has quit [*.net *.split]
leon has quit [*.net *.split]
Piraty has quit [*.net *.split]
xvmt has quit [*.net *.split]
nitrix has quit [*.net *.split]
Mutabah has quit [*.net *.split]
bradd has quit [*.net *.split]
sortie has quit [*.net *.split]
Starfoxxes has quit [*.net *.split]
HeTo has quit [*.net *.split]
om3ga has quit [*.net *.split]
bliminse has quit [*.net *.split]
TheCatCollective has quit [*.net *.split]
nj0rd has quit [*.net *.split]
tanto has quit [*.net *.split]
qxz2 has quit [*.net *.split]
[Kalisto] has joined #osdev
nj0rd has joined #osdev
sortie has joined #osdev
Mutabah has joined #osdev
catphish has joined #osdev
skipwich has joined #osdev
xvmt has joined #osdev
bliminse has joined #osdev
bradd has joined #osdev
Piraty has joined #osdev
vdamewood has joined #osdev
leon has joined #osdev
tanto has joined #osdev
lg has joined #osdev
heat has quit [Ping timeout: 256 seconds]
nitrix has joined #osdev
Arthuria has quit [Remote host closed the connection]
Starfoxxes has joined #osdev
lg_ has joined #osdev
[_] has quit [Read error: Connection reset by peer]
[itchyjunk] has joined #osdev
lg has quit [Ping timeout: 255 seconds]
ThinkT510 has quit [Remote host closed the connection]
ThinkT510 has joined #osdev
auronandace has joined #osdev
ThinkT510 has quit [Ping timeout: 255 seconds]
[Kalisto]1 has joined #osdev
gbowne1 has quit [Quit: Leaving]
vdamewood has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
[Kalisto] has quit [Ping timeout: 252 seconds]
[Kalisto]1 is now known as [Kalisto]
mkwrz has quit [Ping timeout: 276 seconds]
GeDaMo has joined #osdev
mkwrz has joined #osdev
mkwrz has quit [Ping timeout: 260 seconds]
mkwrz has joined #osdev
mkwrz has quit [Ping timeout: 255 seconds]
mkwrz has joined #osdev
divine has quit [Remote host closed the connection]
<zid`> lol advent day 9
mkwrz has quit [Ping timeout: 240 seconds]
catphish has left #osdev [https://quassel-irc.org - Chat comfortably. Anywhere.]
pebble has quit []
pebble has joined #osdev
mkwrz has joined #osdev
mkwrz has quit [Ping timeout: 255 seconds]
goliath has joined #osdev
mkwrz has joined #osdev
netbsduser has joined #osdev
mkwrz has quit [Ping timeout: 268 seconds]
lg_ is now known as lg
lg has quit [Quit: leaving]
lg has joined #osdev
<lg> \e/ heatwaves…
<zid`> he doesn't
<zid`> he just sits there
mkwrz has joined #osdev
mkwrz has quit [Ping timeout: 255 seconds]
mkwrz has joined #osdev
Left_Turn has joined #osdev
mkwrz has quit [Ping timeout: 246 seconds]
Turn_Left has joined #osdev
[_] has joined #osdev
Left_Turn has quit [Ping timeout: 255 seconds]
[itchyjunk] has quit [Ping timeout: 256 seconds]
srjek|home has joined #osdev
bulls has joined #osdev
Gurkenglas has joined #osdev
mkwrz has joined #osdev
roper has joined #osdev
bulls has quit [Ping timeout: 268 seconds]
mkwrz has quit [Ping timeout: 260 seconds]
mkwrz has joined #osdev
mkwrz has quit [Ping timeout: 260 seconds]
mkwrz has joined #osdev
SANiK has joined #osdev
<SANiK> I keep forgetting. Does anyone know what IRC server the #osdev that used to be on wyldryde moved to
mkwrz has quit [Ping timeout: 268 seconds]
heat has joined #osdev
pretty_dumm_guy has joined #osdev
mkwrz has joined #osdev
mkwrz has quit [Ping timeout: 276 seconds]
mkwrz has joined #osdev
mkwrz has quit [Ping timeout: 255 seconds]
frkzoid has quit [Ping timeout: 240 seconds]
Cindy is now known as bnchs
bnchs is now known as Cindy
mkwrz has joined #osdev
mkwrz has quit [Ping timeout: 246 seconds]
[_] is now known as [itchyjunk]
mkwrz has joined #osdev
mkwrz has quit [Ping timeout: 256 seconds]
gareppa has joined #osdev
gareppa has quit [Quit: WeeChat 4.0.5]
Turn_Left has quit [Ping timeout: 268 seconds]
freakazoid332 has joined #osdev
mkwrz has joined #osdev
Turn_Left has joined #osdev
mkwrz has quit [Ping timeout: 256 seconds]
nyah has joined #osdev
pebble has quit []
Arthuria has joined #osdev
zxrom has quit [Remote host closed the connection]
zxrom has joined #osdev
zxrom has quit [Quit: Leaving]
heat has quit [Read error: Connection reset by peer]
heat has joined #osdev
mkwrz has joined #osdev
Arthuria has quit [Remote host closed the connection]
mkwrz has quit [Ping timeout: 255 seconds]
mkwrz has joined #osdev
mkwrz has quit [Ping timeout: 246 seconds]
Gurkenglas has quit [Ping timeout: 250 seconds]
Matt|home has quit [Remote host closed the connection]
Left_Turn has joined #osdev
Turn_Left has quit [Ping timeout: 255 seconds]
auronandace is now known as ThinkT510
q3lont has joined #osdev
Terlisimo has quit [Quit: Connection reset by beer]
netbsduser has quit [Ping timeout: 256 seconds]
Terlisimo has joined #osdev
mkwrz has joined #osdev
netbsduser has joined #osdev
kfv has joined #osdev
mkwrz has quit [Ping timeout: 268 seconds]
mkwrz has joined #osdev
mkwrz has quit [Ping timeout: 255 seconds]
TheCatCollective has joined #osdev
q3lont has quit [Remote host closed the connection]
q3lont has joined #osdev
mkwrz has joined #osdev
zxrom has joined #osdev
flom84 has joined #osdev
mkwrz has quit [Ping timeout: 268 seconds]
q3lont has quit [Ping timeout: 276 seconds]
q3lont has joined #osdev
wblue has joined #osdev
kfv has quit [Quit: Textual IRC Client: www.textualapp.com]
flom84 has quit [Ping timeout: 245 seconds]
wblue has quit [Client Quit]
<bslsk05> ​mail-index.netbsd.org: binary in dtrace output
<heat> what
<heat> 9Hz as a timer is kinda cray cray though
<heat> is that the max the VAX can offer you :v
<zid`> 9Hz is the clockspeed of my casio
<zid`> you take tha tback
alpha2023 has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
alpha2023 has joined #osdev
bitoff has joined #osdev
rustyy has quit [Ping timeout: 245 seconds]
<bslsk05> ​lore.kernel.org: ext4 data corruption in 6.1 stable tree (was Re: [PATCH 5.15 000/297] 5.15.140-rc1 review) - Jan Kara
<moon-child> 'oh no, not again'
<zid`> oopsie doopsie
<mjg> which production fs has data corruption this week?
mkwrz has joined #osdev
<heat> >6.1
<heat> sorry i don't speak kernels that old
<zid`> 6.1 is LTS unfortunately
<zid`> my kernel is 5 something I think? ancient
<zid`> need to forward port my wsl2
<zid`> oh there's a 6.1.y branch
<moon-child> zid`: just do what I do
<zid`> This branch is 98257 commits ahead, 19213 commits behind linux-msft-wsl-5.15.y.
<zid`> wut
<moon-child> install a non lts kernel and then never update it
<zid`> moon-child: I mean, that's what I normally do
<zid`> software updates only ever break things
<moon-child> $ uptime
<moon-child> 19:44:52 up 157 days, 14:53, 79 users, load average: 0.14, 0.11, 0.09
<moon-child> which is actually not that much
<zid`> I see people like "omg keep your stuff up to date!11one"
<zid`> I'm like fucking *why*
<moon-child> sadly I will probably have to reboot it when I get home because of the zfs thing
<zid`> The only thing they ever do is redo the UI so I have no idea where anything is, put features behind paywalls, or add bugs
<zid`> If I wanted a new 'feature' I'd install something that did that, not the thing I installed in the first place
<zid`> The only thing that I have that would benefit from any updates at all is like, the nvidia shimpack^W driver
<heat> 6.6.4-arch1-1 #1 SMP PREEMPT_DYNAMIC Mon, 04 Dec 2023 00:29:19 +0000 x86_64 GNU/Linux
<heat> shut up lmao updating is based and redpilled
<zid`> Linux DESKTOP-VCLC0NQ 5.15.90.1-microsoft-standard-WSL2+ #4 SMP Sat Jun 24 12:25:35 BST 2023 x86_64 AMD Ryzen 7 5800X 8-Core Processor AuthenticAMD GNU/Linux
<heat> my kernel was compiled 5 days ago and even that is quite old
<zid`> yes | make oldconfig | make bzImage modules modules_install | cp arch/x86/boot/bzImage /boot | shutdown -r now
<zid`> heat's hourly cron script
xenos1984 has quit [Read error: Connection reset by peer]
alpha2023 is now known as lithiumSulfate
mkwrz has quit [Ping timeout: 256 seconds]
<heat> that'd be sick
<heat> straight from torvalds/linux.git
goliath has quit [Remote host closed the connection]
<heat> versioning is bollocks, use HEAD
<zid`> "I’m almost 40 and Scottish. I only recently found out most people read IDK as “I don’t know”. I always thought it was “I dinnae ken”"
<zid`> nice
<heat> eye dee kay
<heat> mjg, btw it's interesting to note that CI would've stopped that from ever happening
<zid`> heat: do you think ask jeeves retired well?
<zid`> or was he just sick of the endless questions and offed himself
goliath has joined #osdev
<heat> good question
<heat> probably the 2nd option
<zid`> same
blockhead has joined #osdev
mkwrz has joined #osdev
mkwrz has quit [Ping timeout: 256 seconds]
q3lont has quit [Ping timeout: 245 seconds]
xenos1984 has joined #osdev
mkwrz has joined #osdev
mkwrz has quit [Ping timeout: 245 seconds]
FreeFull has quit [Remote host closed the connection]
zxrom has quit [Quit: Leaving]
<mjg> heat: wait, you run top of master on your destkop?
<mjg> on arch?
<mjg> CHAD
flom84 has joined #osdev
<mjg> real name of that distro is adch
<mjg> whic is just an anagram of chad
dude12312414 has joined #osdev
mkwrz has joined #osdev
GeDaMo has quit [Quit: That's it, you people have stood in my way long enough! I'm going to clown college!]
mkwrz has quit [Ping timeout: 256 seconds]
<heat> mjg, no
<heat> i would like to
<heat> if it wasn't such a pain in the ass to integrate with a distro
<heat> arch runs the latest stable
<heat> (stable, not LTS)
gbowne1 has joined #osdev
<mjg> :[
<mjg> are you running any of your coden :X
<heat> no
<mjg> good choice
<heat> actually im running my kern_sysctl patches still
<heat> hilariously i don't think i have any use for anything i've ever written
dude12312414 has quit [Ping timeout: 240 seconds]
<geist> chadnix
flom84 has quit [Remote host closed the connection]
bitoff has quit [Ping timeout: 276 seconds]
<heat> geist!
<heat> quick, what's your filesystem
<geist> hello heat
<heat> favourite filesystem i mean
<geist> ODS-2
<heat> i think we found the openvms fan
<geist> heh that's what i spent most yesterday evening doing: futzing with the vax server
<heat> WHY ARE YOU NOT RUNNING 4.4BSD
<heat> smh my head
<geist> well, funny you say that. i was starting a 4.3 Quasijmani or whatever install last night
<geist> but turns out it's really picky about everything, so i think i might switch to something like BSD 1.6.2, which seems to be a good vintage
<heat> quasiwhat
<zid`> heat subscribes to the plum pudding model of the atom, don't trust him geist
<bslsk05> ​gunkies.org: 4.3 BSD Quasijarus - Computer History Wiki
<heat> damn right, i am not trustworthy
<geist> but turns out it hasn't been maintained in over 15 years and the creator guy was kinda a pain in the ass
<geist> so i've given up
<heat> >A lot of people don't like -Reno as its embracing of POSIX is rather treasonous to the BSD ideal
<heat> LOL
<geist> right, that's apparently the real deal with it: it's a fork before -Reno
<geist> but it was effectively the last 4BSD that explicitly was maintained on vax i think
<geist> but the next thing that raelly works well on vax is like netbsd 1.2+
<geist> so i think something like 1.6.2 is a nice compromose. still fairly simple (no SMP, gcc 2.x)
<heat> 4.4 also works on the vax?
<heat> oh, maintained
<heat> yeah but no one needs that
<geist> i think by then it was very long in the tooth
<heat> what if you ported linux to the VAX
<geist> you know i was getting a bit sad just reading the patch notes for early netbsd (late 90s, early 2000s)
<heat> i've legitimately thought about re-porting linux to riscv just to retrace their steps
<geist> that was exactly when i was graduating college, and there was *so much work* to do
<heat> i suspect it's Not That Hard
<geist> stuff that reasonable folks like us could have done
<heat> yeah
<geist> now... everything is so big the only thing we can do is toil writing our own little oses
<heat> now they all go on about crap like CXL and DOZ IT SCALE ON 500 CPUS
<geist> or fixate on one super tiny detail and try to shave off some performance
dude12312414 has joined #osdev
<heat> huh, netbsd had an ntfs driver in 1999
<geist> sure. actually that's exactly when i wrote an NTFS driver for BeOS
<geist> my first real experience with kernel hackery
<heat> i'll never understand how ntfs is the one filesystem no one has ever managed to get really stable support for
<heat> it doesn't seem that complicated
<heat> sure, it's was undocumented, but you had like, 20 years
dude12312414 has quit [Client Quit]
<geist> i duno i thought linux had fairly stable support
<heat> yeah but that was all FUSE
<heat> ntfs-3g that is.
<heat> the in-kernel ntfs driver was a mess (also RO I think)
<geist> which then begs the question: why does doing it with FUSE make it easier? is the code written differently such that it can't be put in the kernel? or does FUSE serialize things in a way that make it much easier to implement?
<geist> or maybe the fuse implementation is BSD?
<geist> well, not GPL
<heat> good question, I don't know
<heat> i don't think it's a licensing problem, cuz linux has MIT code all over, and AFAIK in theory you can relicense BSD to GPL
<geist> it does remind me, there's an ODS-2 filesystem driver for linux that i have to try some day
<geist> otherwise there's really nothing out there that can mount or even inspect a disk image
<geist> but it's an external module
<geist> i dont think it's particularly complicated, sort of a proto-NTFS
<heat> damn you dave cutler
<heat> maybe the openvms troll was dave cutler
<geist> did you wtch the dave cutler interview the other day? it's pretty good
<heat> yeah i watched some good chunks of it
<heat> the dave guy has a new interview with raymond chen
<geist> yeah i was thinking of watching that
<geist> my main complaint is the dave guy doesn't really know that much about that old stuff
<geist> he's like 'whats a computer mr cutler? i dont know anything but windows'
<geist> i follow his channel and he seems interested in lots of stuff, some old retro bits, but sort of only on the surface as far as he can tell
<heat> and he's apparently also a scammer
<geist> more like 'look at how old this is!'
<geist> vs like truly understanding some old thing, what the engineers were thinking, what it was for, what it was good at, etc
<heat> also i get really pissed at his really biased linux takes
<geist> yah
<geist> honestly an old thing like a vax or an 8 bit atari, etc the thing itself to me is a curiosity, but more of a catalyst to go dig into the details and the details are the fun part
<geist> including the human aspect of it
<geist> and trying to use some thing the way people did at the time is interesting, it's a sort of forced nostalgia for something you never experienced in the first place
<geist> maybe it all plays out in my head as i get older as a way to reject all the new complicated stuff i also do
<heat> yeah i feel you
<geist> like watching old movies or something
<bslsk05> ​'Linux like original Unix' by FreeDOS (00:44:55)
<heat> this vid triggered that in me
<heat> he writes a fortran program, then writes a report using nroff
<heat> all in ed, of course
<geist> mmm yeah
<geist> this guy does it for me too with 8 bit stuff: https://youtu.be/KzCHCBv6VK4
<bslsk05> ​'Altair 680 with High Speed Reader/Punch, Part 1' by deramp5113 (00:26:33)
<geist> he has an infinite supply of these vids about using some old esoteric monitor or DOS on a variety of 8 bit machines
<geist> including (like this one) goig in and patching the editor manually to fix bugs
<geist> funny on my other serial 'terminal' (other than the vt320) i have a little dedicated computer running cool-retro-term on an old 19" LCD with a type M usb keyboard to have a somewhat authentic experience
<heat> heh
<geist> side note: https://en.wikipedia.org/wiki/Files-11#File_security:_protection_and_ACLs is a pretty good summary of a similar but more powerful unix like permission scheme, good food for thought if you always go back to the standard octal way of thinking
<heat> it looks remarkably unixy
<heat> i don't get the "system" thing but i guess it probably makes sense on VMS's design
<heat> windows, as a good VMS clone, also has SYSTEM
<geist> think of it this way: there's no root user, so to get some sort of equivalent, you need a set of permissions to get the same thing
<geist> there's a medly of SYSTEM users, though there's also a SYSTEM user, which in this case intrinsically matches the SYSTEM set of permissions because its' UID is low
<geist> but basically that means because you're a system user (ie low UID) that doesn't intrinnsically get you read/write to everything in the FS, it's ust another permission bit
<geist> in NT there's a SYSTEM acl too
<heat> does that mean you can deny SYSTEM access in VMS?
<geist> but then there's an overriding set of permissions that a user *could* have, like READALL that you'd assign to some BACKUP user in the system
<heat> access to a dir or file or something
<geist> yah
<heat> dang
<heat> so how are you supposed to manage a multi-user system?
<geist> but then of course a system user could have the "BYPASS: user implicitly has RWED access to all files, regardless of file protection" priviledge
<heat> oh
<geist> i guess the point is there's a more complicated set of priviledges and whatnot that you could split across multiple accounts, whic i think was the general idea
<geist> vs having a single ROOT
<geist> i think the canonical equivalent would be something like OPERATOR account or whatnot, which may be used by the sysadmin but doesn't intrinsically have read priviledges to everything in the system
<geist> but could create new accounts, etc
<geist> but thebn later on they layered some sort of ACL system on top of it, which i dont know how that precisely layers with these older bits they describe in wikipedia. that's basically also how NT works AFAIK
<geist> since they have the old school read/write bits from DOS and then a sest of ACLs that's more modern
<geist> i dont know precisely how the two stack, which one has more permission than the other
Arthuria has joined #osdev
<heat> does ntfs have that?
mkwrz has joined #osdev
<zid`> The ever-dilemma of "should I make a complicated group to handle this" or "fuck it, do it as root"
<blockhead> you could compromise and do it as root in a complicated way
<geist> heat: yeah
<geist> NTFS has always had ACLs from day one, but i think over the years they added this notion of inheriting ACLs from parent directories and whatnot, which make it somewhat complicated to envision
mkwrz has quit [Ping timeout: 246 seconds]
<geist> also NTFS refers to user ids and groups and whatnot by UUID, so that's why if you ever mount a NTFS drive from another machine a lot of times the permissions dont make sense
<geist> it'll be for UUIDs that are unknown
<geist> i think some of the users are intrinsic, like SYSTEM, or whatnot? maybe they use a fixed UUID? haven't really looked into it closely
Arthuria has quit [Ping timeout: 256 seconds]
Arthuria has joined #osdev
<heat> user ids are GUIDs???
<geist> yah pretty sure
<geist> NT is very GUID centric
<heat> it's like they enjoy pain
<geist> i dunno, fits in a vector!
<mjg> oh?
<mjg> i know pids are pids
<mjg> :X
<mjg> as in just ints
<geist> well, to be fair, it's just 128 bits. 20 years ago that was OMG 4 words! but now it's ust two words
<mjg> :)
<mjg> did it make sense though?
<geist> ilke, passing around a uuid and comparing it is really no big deal
* geist shrugs
<mjg> (it very well might have, not judging)
<geist> presumably they were thinking about user ids across a whole organization being unique, and so you could have thousands at least
<geist> not that you couldn't fit that in a 32bit int, obviously, but then i guess with a uuid there's almost no chance of collision
exit70 has quit [Quit: ZNC 1.8.2+deb2build5 - https://znc.in]
<mjg> i thought some of the selling point was centralized management of this stuff
<heat> UUIDs are not necessarily unique unless you make sure of it
<geist> right, and so having the local OS treat their user ids and whatnot as the same scope as the overall management i guess makes sense
<geist> also shared file systems, etc
<heat> v4 ids are completely random, so in that case it's /probably/ random
<mjg> in this context i would assume you would have ids from "domain controller" or whatever the fuck name
exit70 has joined #osdev
<heat> but then you have a bunch of versions that use your mac address and time, and those guarantee some uniqueness as long as no one in the same machine is generating a UUID
<heat> proper creation of those needs a daemon
<mjg> but ultimately i'm mostly clueless about windows
* mjg is a proud linux ricer since 2004
<geist> yah domain controller
zxrom has joined #osdev
<geist> i guess it's not much different than having some sort of kerberos system in the unix world too
<geist> which then ends up mapping everything to some 32 or 64bit uid
<heat> domain controller sounds so enterprise OOP i'm about to go into a coma
<mjg> windows is enterprise and oop
<mjg> you seen that interview with cutler
<mjg> i loved the part where he said people wanted windows port to 64 bit in production
<mjg> because the webserver was leaking memory and it took longer to crash
<mjg> :d
exit70 has quit [Client Quit]
<heat> lol
<heat> yeha i remember that bit
<heat> the microsoft.com people wanted that
<mjg> ya
<geist> yep. i remember working on some project using IIS in like 1998. we had to reboot the server every night because it'd eventually leak
<mjg> enterprise innit
<heat> not quite!
<geist> but i think at the time that was the idea: you bought a pile of cheap x86 machines and just rebooted half of them every night
<mjg> geist: i had one windows 2000 as a sysadmin once
<mjg> something wa fucked there, it would take 10+ minutes to boot
<heat> a proper enterprise OOP system would never leak memory because it's all GC'd
<geist> which was kinda ahead of its time when you think about it, because now it's all CLOUD
<geist> vs the at the time notion of you buying an expensive as fuuuuck machine and running it 5 nines
<heat> buying a SPARC
<heat> only hardcore performance lovers had a SPARC SOLARIS system
<mjg> while yoloing was forward thinking, i don't know if i would describe it like that
<geist> yeah it wans't really forward thinking
<geist> it just ended up being the direction things sort of went in in a different way
<geist> really it was the rise of cheap ass x86 machines
<geist> and the death of expensive workstations/server class hardware
<heat> these days you're on T E H C L O U D
<mjg> the funny bit is that a today's lol programmer would be pretty considered above average
<heat> or, better, T E H E D G E
<mjg> at the time
<mjg> bro i run my production from staging
<mjg> environment
<geist> bruh!
roper has quit [Quit: leaving]
<heat> staging is what NOOBS use
<heat> commit straight to prod
<heat> master is prod, HEAD is prod
<heat> prod is prod
<heat> prod
<mjg> here is an enterprise trick
<mjg> you create 2 similarly named branches
<mjg> say dev and devel
<geist> dev and _dev
<mjg> one of which is experimental
<mjg> then you have people guess
<heat> subscribe to Mateusz's garage for more software engineering tips and tricks
<heat> Next Video: Solaris vs Linux (BOTH PESSIMAL?!?!)
<mjg> Speed up Solaris with ONE WEIRD TRICK (gone WRONG?)
<geist> i'm just tring to get you to dive in and start hacking on VMS
<geist> PESSSIMAL
<mjg> i'm getting too old for kernels
<mjg> gonna do some userspace
<mjg> (no joke)
<heat> don't say that
<heat> download the latest kernel release at https://kernal.org/
<bslsk05> ​kernal.org: ArmageddonSoon.com
<mjg> totes realzies
<moon-child> wer kernalen.org
<mjg> you should try some
<heat> i don't like it
<mjg> elitist eh?
<heat> i can get behind some really low level userspace like the libc or something
<heat> but normal userspace? not for me
<heat> it's just missing the oooph
<mjg> lol
<mjg> while you were cussing at tech debt in runtime linker
<mjg> i whipped out a new website
<heat> LITERAL
<mjg> and it was easy
<heat> WEBDEV
<mjg> oh no
<mjg> i gave myself away
<mjg> 8(
<mjg> i have been doin node.js this whole time
<mjg> WHOLE.FUCKING.TIME
<heat> RUST WEBDEV NODEJS FRONTEND MIDDLEWARE BACKEND
<mjg> (with php sprinkled in for good measure)0
<heat> OH
<heat> THE GEEZER WEBDEV
<geist> that being said, i haven't tried writing rust for some good ol fashoined cgi-bin
<geist> probably has some great crates for precisely that
<mjg> :X
<mjg> i thought real cgi-bin is dead and burried
<mjg> now you "fast" cgi
<heat> ah yes, just like the scanf craten
<geist> that's why i said ol fashioned
<heat> that use regex
<geist> yeah but it's all statically linked so goes brrr
<mjg> that was phhrased poorly
<mjg> it was fast cgi when i was messing with it 13+ years ago
<mjg> i would hope there is something better now
* geist shrugs
<geist> speed isn't every bruh
<geist> everything
<geist> step 1) make it work, step 2) profit
<geist> step 3) cash out and go find another job
<mjg> how to make it work: scanf
<mjg> virtually every cgi out there had a buffer overflow, command injection or some other luller
<mjg> validating arguments was unheard of
<geist> yeah that's why i was thinking there's probably some good rust crates to deal with all that
<geist> break up all the http shit and give you some thing to deal with etc
<heat> why write code when someone else can write code for you?
<heat> turly the genz language
<geist> AIIIII
<mjg> Rust AI Integrate
<mjg> d
<heat> i asked bard to write me a rust crate that parses an HTTP request and it immediately used another crate
<mjg> dude
<mjg> i asked chatgpt to *NOT* use threads so it used tokio
<mjg> which spawns threads
<mjg> :]
<clever> lol
<geist> heat: sure but isn't tahat precisely what you're *supposed* to do?
<geist> seems like one of the big selling points of rust is all the automagic crates that already do what you want
<heat> no?
<heat> crates are great until they aren't
<clever> mjg: now i have to wonder, could chatgpt solve this? https://gist.github.com/cleverca22/95d2cb2f4e1f59be2bd94f0e1d446cc9
<bslsk05> ​gist.github.com: pi5_voltage.py · GitHub
<geist> well, agreed. i'm saying that's the sort of party line though
<geist> having the whole crate system be so easy to use, etc etc
<CompanionCube> geist: funny you mentioned kerberos, since that's one of the things it uses
<heat> yeah but programming language party lines are stupid
<heat> the C++ party lines are 1) hilarious 2) completely different, depending on who you ask
<heat> the C party line is just a grumpy 60 year old saying "don't touch my language"
<heat> mjg, also tbf even io_uring spawns threads, just in the kernel side
<heat> also THE MIGHTY POSIX AIO
<clever> heat: i would have assumed io_uring would just be more ike epoll, where there can be many things that wake one thread, and the kernel remembers which ones
<heat> wake what thread?
<clever> rather then spawning kernel side threads, just have a single thread that sleeps until an event comes in
<clever> but then i just remembered,io_uring, doesnt really involve blocking syscalls....
<clever> so that would more need to write into an arbitrary userland memory, when events anywhere occur....
Arthuria has quit [Killed (NickServ (GHOST command used by Guest684531))]
Arthuria has joined #osdev
<heat> but that's slow
<clever> yeah, i can see the issue now
mkwrz has joined #osdev
<heat> ideally you probably want as many threads as IO submission queues for the device you're dealing with
<heat> for optimally async io
<clever> another thing i was thinking about, was zero-copy io
<clever> for some things like disk io (and even some usb disk io), you can in theory just dma directly into a userland buffer, youll lose the ability to cache, but its very fast
<clever> but for others like network io, the packets are arriving out of order, so you dont know where to write, until after youve parsed
Arthuria has quit [Ping timeout: 260 seconds]
mkwrz has quit [Ping timeout: 268 seconds]
Arthuria has joined #osdev
Arthuria has quit [Read error: Connection reset by peer]
foudfou has quit [Quit: Bye]
foudfou has joined #osdev
Arthuria has joined #osdev
Arthuria has quit [Ping timeout: 240 seconds]
<bslsk05> ​virtuallyfun.com: BSD on Windows: Things I wish I knew existed | Virtually Fun
netbsduser has quit [Ping timeout: 256 seconds]
Left_Turn has quit [Read error: Connection reset by peer]
mkwrz has joined #osdev
<geist> CompanionCube: yeah but it didn
<geist> it didn't always, i think. the original windows domain stuff was all hand rolled i believe
<geist> then later with the active directory bits i think it got moved to something more standard?
zxrom has quit [Quit: Leaving]
<geist> that whole pile of tech i dont really understand
mkwrz has quit [Ping timeout: 256 seconds]
[_] has joined #osdev
[itchyjunk] has quit [Ping timeout: 260 seconds]