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
<gog> are you okay
<heat> whoever wrote this is not okay and down bad
<mjg> :(
<Ermine> not many phoronix commenters are okay
<gog> i'm the slut allocator
<gog> i keep a linked list of sluts in my dms
<gog> they're nice girls
<mjg> is that a bdsm thing?
<Ermine> heat: which allocator does onyx use?
<heat> where? the kernel?
<Ermine> yes
<heat> it's a slab allocator
<mjg> SUN ENGINEERING SPIRIT
<heat> the sun engineering ethos runs strong in the onyx kernal
<mjg> may as well boot up solaris
<mjg> there is someone terminally fanboyish towards sun over at hackernews
<mjg> > "And any time 0xide Computer ships a cloud in a rack with the Helios operating system powering it, Sun Microsystems shines bright as a beacon of indestructibility due to quality."
<mjg> to give you a taste
<mjg> helios is presumably their illumos fork
<kof123> helios illumos solaris sun -- there is a theme here :D
<Ermine> Or is it ddevault's OS which goes to production?
<Ermine> Is slab invented by solaris devs?
<mjg> yes but not really
<mjg> just a sun guy wrote about it
<mjg> btw did you know Solaris is used in life-critical environments, like for example medical systems or energetics. Anything that's absolutely life critical and must run for thousands of days without rebooting. And it's really nice for running software because of its advanced features like the runtime linker, zones containerization and fault management architecure features like SMF. It's awesome software on
<mjg> awesome hardware.
<mjg> too bad i managed to crash solaris a few times :(
<mjg> must have been using it wrong
<Mondenkind> > Solaris is used in life-critical environments
<Mondenkind> that's terrifying
<heat> Ermine, see Bonwick94 and Bonwick01
<mjg> Mondenkind: wdym terrifying
<mjg> fuck off!
<heat> the linux and onyx slab allocators are mostly those two papers combined, but i ditched the caching aspect and so did linux
<mjg> Illumos bestest kernal out there, then you got a long line of nothing
<mjg> then minix
<Ermine> I've read one job description, and it mentioned AIX skills
<heat> the only good kernels have been: illumos, solaris when sun microsystems existed, IBM AIX and minix
<mjg> were you larping 2001?
<Ermine> Was super surprised that there's AIX system in this country
<heat> oh and tru64
<mjg> Ermine: there is tons of funny legacy
<Ermine> heat: and openVMS!
<heat> sir, this is a UNIX channel
<mjg> i guarantee some twat out there runs OpenBSD 3.0
<mjg> and by runs i mean the hardware has not failed yet and everyone is too terified to migrate
<mjg> past that it is doing next to nothing
<Ermine> heat: here was openvms fan
<mjg> bonwick?
<mjg> wat
<heat> davec
<mjg> davec wrote some of it, so...
<Ermine> mjg: I mean, I thought that there are 3.5 companies having stuff like aix or hp-ux, and zero of them are in Russia
<mjg> i wonder how much aix is left at ibm
<mjg> they were already moving to linux hardcore 10+ years ago
<mjg> was my first clue aix is going down11
<Ermine> googled bonwick, and google gave some slides on slab with memes in it
<heat> link?
<mjg> Sun Microsystems failed because their hardware pricing wasn't competitive with the x86-based PC bucket turds, which were "good enough": most people working in IT can't explain why Sun hardware was superior even though it vastly was, so it was like throwing pearls before the swine. We have lots of ignorant idiots in IT, because they were drawn to good salaries like moths to a flame.
<bslsk05> ​speakerdeck.com: Memory by the Slab: The Tale of Jeff Bonwick’s Slab Allocator - Speaker Deck
<Ermine> mjg: reminds me NeWS vs X story
ramenu has quit [Remote host closed the connection]
ramenu has joined #osdev
<mjg> lol
<mjg> > Python is a horrible language for system administration (or designing systems as in system engineering, for that matter): it's big, it's bloated, it's over-complicated, it's slow, it's hard to debug.
<mjg> maybe, can't comment, but then..
<mjg> > Shell is the native automation facility of the UNIX-like operating systems, and with 40+ years behind it, it is well understood, easy to write, easy to debug, and has no artificial dependencies (so, completely the opposite of Python).
<mjg> lmao
<Ermine> is it still hackernews?
<mjg> ye
goliath has quit [Quit: SIGSEGV]
<Ermine> Isn't like 99% of their comments hilarious?
<mjg> no, it is 100%
<Ermine> lol
<heat> they forgot how BLOATED bash is
<heat> and GLIBC 🤮🤮🤮 GLIBC BLOATED
<gog> i'm bloated too
<gog> (i had dairy)
<mjg> i had laxative for breakfast
<gog> nice
<zid> I'd be bloated if I ate a cow too
<zid> much less an entire dairy
<Ermine> heat: I saw guy advocating for ksh
<zid> did you report him to social services?
<Ermine> No I've catched flashbacks
agent314 has joined #osdev
agent314 has quit [Ping timeout: 260 seconds]
freakazoid332 has quit [Ping timeout: 245 seconds]
<heat> argh i found out why nano is borked
<heat> i dont have scrolling regions
<gog> ksh
<Mondenkind> keesh
<Mondenkind> quiche
<heat> shesh
<Mondenkind> i use bourne shell by jason bourne
<heat> i use born shell by obstetrician
<Mondenkind> i use burn shell by YOUR MOOOOOOOOOOOOOOOOMMMM
frkazoid333 has joined #osdev
gog has quit [Ping timeout: 246 seconds]
navi has quit [Quit: WeeChat 4.0.4]
skipwich has quit [Quit: DISCONNECT]
skipwich has joined #osdev
ramenu has quit [Ping timeout: 252 seconds]
<heat> yay i got nano and bim scrolling well
vdamewood has joined #osdev
stolen has joined #osdev
<zid> nabo and bim yay
<heat> lol
<epony> did you know that RISC workstations is no more.. well good then, now fix your kernels for CISC :-)
* epony pushes a glass of bucky bits towards the edge of the flat Earth of MINIX.. take some, it's free
<epony> for the uninitiated (and undefined of you) https://en.wikipedia.org/wiki/Bucky_bit?useskin=vector#History
<bslsk05> ​www.google.com: Error 403 (Forbidden)!!1
<epony> and that's not even UNIX and it still did beat your LieUnix game darn good well whoppety whompr
<epony> WOPR REAL GOOD
<bslsk05> ​daniel.haxx.se: The I in LLM stands for intelligence | daniel.haxx.se
<heat> Large language models (LLMs) have the potential to revolutionize the way bug reports are written and processed. By leveraging their vast knowledge of code and natural language, LLMs can help to create more concise, accurate, and informative bug reports. This can lead to faster bug resolution and improved software quality.
<zid> The great part about LLMs, is they they're used adversarially too
<zid> I now have the exact same ability of a chat bot to field customer service reports, to flood customer service with nonsense requests that sound legitimate
heat has quit [Ping timeout: 240 seconds]
<epony> "that article is old" --teh inturdweep
<epony> Did you know that the other cornpanies except IBM were called the "seven dwarves" ?
<kof123> yes, but that has other meanings, you are entering hieroglyph land :D
<epony> when you come to the fight of computing evolution, don't up with a light pen 'cause there is lasers and light sabres and redeemers here
<epony> "In fact, IBM's market share was so much larger than all of the others that this group was often referred to as "IBM and the Seven Dwarves." By 1972 when GE and RCA were no longer in the mainframe business, the remaining five companies behind IBM became known as the BUNCH, an acronym based on their initials."
<epony> ^ In terms of sales, Burroughs was always a distant second to IBM.
gbowne1_ has quit [Remote host closed the connection]
vinc has joined #osdev
netbsduser has joined #osdev
netbsduser has quit [Ping timeout: 245 seconds]
vinc has quit [Read error: Connection reset by peer]
epony has quit [Quit: QUIT]
vdamewood has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
agent314 has joined #osdev
agent314 has quit [Ping timeout: 246 seconds]
stolen has quit [Quit: Connection closed for inactivity]
gxt has quit [Remote host closed the connection]
gxt has joined #osdev
rpnx has joined #osdev
theruran has quit [Quit: Connection closed for inactivity]
air has quit [Quit: cria 0.2.9cvs17 -- http://cria.sf.net]
air has joined #osdev
zid` has joined #osdev
zid has quit [Ping timeout: 252 seconds]
valshaped7424880 has quit [Quit: Gone]
rpnx has quit [Quit: My laptop has gone to sleep.]
valshaped7424880 has joined #osdev
gxt has quit [Remote host closed the connection]
gxt has joined #osdev
vinc has joined #osdev
vinc has quit [Read error: Connection reset by peer]
vinc has joined #osdev
GeDaMo has joined #osdev
vinc has quit [Read error: Connection reset by peer]
[_] has joined #osdev
[itchyjunk] has quit [Ping timeout: 246 seconds]
Left_Turn has joined #osdev
rustyy has quit [Quit: leaving]
rustyy has joined #osdev
vinc has joined #osdev
agent314 has joined #osdev
gabi-250_ has quit [Ping timeout: 240 seconds]
gabi-250_ has joined #osdev
gxt has quit [Remote host closed the connection]
gxt has joined #osdev
gxt has quit [Remote host closed the connection]
gxt has joined #osdev
vinc has quit [Read error: Connection reset by peer]
gog has joined #osdev
nur has joined #osdev
vinc has joined #osdev
vinc has quit [Read error: Connection reset by peer]
epony has joined #osdev
netbsduser has joined #osdev
epony has quit [Remote host closed the connection]
vinc has joined #osdev
vinc has quit [Read error: Connection reset by peer]
ramenu has joined #osdev
experemental has joined #osdev
experemental has quit [Ping timeout: 252 seconds]
vinc has joined #osdev
navi has joined #osdev
vinc has quit [Read error: Connection reset by peer]
vinc has joined #osdev
vinc has quit [Read error: Connection reset by peer]
SGautam has joined #osdev
heat has joined #osdev
<heat> Hi everyone in #osdev! I'm heat, a fellow OS developer interested in learning more about the process of creating operating systems. I'm eager to connect with other enthusiasts and share ideas, and I'm particularly interested in learning from those with more experience than me.
<heat> I'm also open to answering questions about OS development to the best of my ability, so please don't hesitate to reach out if you have any.
<nortti> how should I do locking in my page cache?
<heat> i'd love to paste it all in but i'll just flood the channel
<SGautam> Hello mCdT
<Ermine> good that you asked
* Ermine sends 6 hours long audio message
* mjg burps
<mjg> wadap fucks
<sham1> It's bloody cold here
<FireFly> the weather is a bit rough here, mostly just wet and rainy
<mjg> any of you watching for all mankind?
<mjg> overall a great show, but there is liek 40% of total smut in there
ramenu has quit [Ping timeout: 255 seconds]
agent314 has quit [Read error: Connection reset by peer]
ramenu has joined #osdev
ramenu has quit [Ping timeout: 260 seconds]
<bslsk05> ​github.com: Onyx/kernel/kernel/net/socket.cpp at master · heatd/Onyx · GitHub
<heat> that's a bug
<Ermine> You mean, it should return res as is?
<heat> yes
<heat> ->write() is an old call that used to (ab)use errno. i then started shifting from that style onto -ERRCODE, but ->write() took some time to be converted
<heat> that socket_write is an example of an old-style ->write() that no longer matches what ->write() callers expect
<Ermine> anyway, I've opened a new PR with write_iter returning the proper code
[Kalisto]1 has joined #osdev
[Kalisto] has quit [Ping timeout: 260 seconds]
[Kalisto]1 is now known as [Kalisto]
dude12312414 has joined #osdev
dude12312414 has quit [Client Quit]
ramenu has joined #osdev
zxrom has quit [Read error: Connection reset by peer]
zxrom has joined #osdev
goliath has joined #osdev
xenos1984 has quit [Ping timeout: 240 seconds]
mavhq has quit [Quit: http://quassel-irc.org - Chat comfortably. Anywhere.]
xenos1984 has joined #osdev
mavhq has joined #osdev
goliath has quit [Client Quit]
Arthuria has joined #osdev
Arthuria has quit [Killed (NickServ (GHOST command used by Guest684531))]
Arthuria has joined #osdev
xenos1984 has quit [Ping timeout: 256 seconds]
SGautam has quit [Quit: Connection closed for inactivity]
exit70_ has joined #osdev
exit70 has quit [Ping timeout: 246 seconds]
exit70_ is now known as exit70
heat has quit [Remote host closed the connection]
heat has joined #osdev
xenos1984 has joined #osdev
biblio has joined #osdev
biblio has quit [Quit: Leaving]
ramenu has quit [Ping timeout: 264 seconds]
FreeFull has quit [Remote host closed the connection]
FreeFull has joined #osdev
<Ermine> heat: https://github.com/heatd/Onyx/blob/master/kernel/kernel/tty/tty.cpp#L308 -- I have a feeling that buflen should be a property of struct tty
<bslsk05> ​github.com: Onyx/kernel/kernel/tty/tty.cpp at master · heatd/Onyx · GitHub
experemental has joined #osdev
<zid`> heat: what's your rule for when cases open a block?
<zid`> it seems random
GeDaMo has quit [Quit: That's it, you people have stood in my way long enough! I'm going to clown college!]
<Ermine> clang-format guides you
Arthuria has quit [Ping timeout: 245 seconds]
<zid`> I want some tapas :(
rpnx has joined #osdev
<gog> i had tapas last night
<zid`> I had monotapas if that counts?
<zid`> I found a box of mini spring rolls in the freezer
<zid`> oh, and 2 mozarella sticks
sbalmos has quit [Ping timeout: 245 seconds]
sbalmos has joined #osdev
zid has joined #osdev
<zid> hrmph, my machine MCEd
zid` has quit [Ping timeout: 256 seconds]
experemental has quit [Remote host closed the connection]
<kof123> > enthusiasts > ENTHUSIASM, n. A distemper of youth, curable by small doses of repentance in connection with outward applications of experience. :)
gbowne1 has joined #osdev
[Kalisto] has quit [Quit: No' vemo']
<immibis> heat: so how is your OS going so far?
[Kalisto]1 has joined #osdev
Stary has quit [Ping timeout: 260 seconds]
CompanionCube has quit [Ping timeout: 260 seconds]
epony has joined #osdev
[Kalisto]1 has quit [Quit: No' vemo']
Arthuria has joined #osdev
[Kalisto]1 has joined #osdev
Stary has joined #osdev
goliath has joined #osdev
[Kalisto]1 has quit [Quit: No' vemo']
<immibis> working on something like an OS or a driver or device firmware always has this problem that you can't actually use the device you're working on, so if you want to make something useful, you need two of them and you're still never quite sure about using it
<immibis> like maybe I find a bug in a video driver, I *could* try to fix it, but I'd need to restart my entire graphical session every time to test it. (Maybe that's an excuse to find a comfortable TUI environment, but the problem still exists in other areas like the kernel)
CompanionCube has joined #osdev
<immibis> i did find a video driver bug once, but it was in the per-process part so easy enough to patch (modulo gentoo)
pwng has joined #osdev
<zid> I blame heat, idk why, but it just feels right
<Ermine> so, qemu
<zid> no defo heat, not qemu
<immibis> try better cooling
[itchyjunk] has joined #osdev
[_] has quit [Ping timeout: 268 seconds]
<heat> damn okay many pings and i was sleeping like a cartoon character
<Ermine> Did we wake you up?
<heat> Ermine, <Ermine> heat: https://github.com/heatd/Onyx/blob/master/kernel/kernel/tty/tty.cpp#L308 -- I have a feeling that buflen should be a property of struct tty <-- buflen is somewhat misnamed, it's just tracking the amount of buffer we can/want to read
<bslsk05> ​github.com: Onyx/kernel/kernel/tty/tty.cpp at master · heatd/Onyx · GitHub
<heat> depending on things like ICANON, EOF, newlines, etc
<heat> it's not the length of the input buffer
<heat> Ermine, no
<heat> i kept sleeping like a cartoon character
<heat> zid, i tend to like opening up blocks on every case if they have any amount of code at all
<heat> but it's sometimes not followed
rpnx has quit [Quit: My laptop has gone to sleep.]
<zid> okay but what about my MCE
<heat> have you checked your amd manual
<heat> at least on intel they give you all the tools to figure out what fucked up
<immibis> heat: are you making a POSIX?
<heat> immibis, it's going well, yes i'm making a POSIX kernel
<heat> i find the really hard part to be testing and stability. of the actual kernel
<heat> for instance doing a filesystem on a UNIX system has so many edge cases and points where having many threads in the kernel could trip over itself
<heat> and you have some test cases and stressers but you really need to dig to find them
<heat> ofc if you Big Kernel Lock everything most of these become footnotes and not problems, which is what hobby OSes tend to do, and what I don't want to do because that's very 90s
<Ermine> uuuuunaks
<zid> heat: bus error on core0
<zid> the infinity fabric went NAH MATE
<heat> the infinity fabric just went finite
<zid> I just turned off PBO, I need to remount the cooler (and have needed to for months) but I cbf
<zid> it'd take literal minutes
Arthuria has quit [Killed (NickServ (GHOST command used by Guest684531))]
Arthuria has joined #osdev
vinc has joined #osdev
<Ermine> heat: so I guess allocating that buffer is PESSIMAL?
<heat> absolutely
<heat> so pessimal it's not even funny
<heat> i'm going to take this stat out my ass but 99% of system calls don't need to do short-lived memory allocations
<heat> the big exception being poll and select which /may/ need to do so, hence why existing UNIXes aggressively try to use the stack before doing a syscall-lifetime malloc
[Kalisto]1 has joined #osdev
<Ermine> I'll take a look tomorrow
<immibis> heat: at some point you're wasting more time making POSIX than making an actual kernel. Remember, POSIX is designed as a lowest common denominator for servers and mainframes from the 1990s and earlier
<Ermine> Meanwhile, vax/vms book is is somehow avaialable on amazon
<immibis> to within experimental error, nobody cares about POSIX as long as their apps work
<immibis> which mostly means doing what Linux does, to the extent any apps care
<Ermine> linux does much more than posix
<Ermine> vms book "It assumes that the reader is familiar with vax architecture"
<immibis> linux does lots of things. the point is that if you want to run linux apps, you emulate linux well enough to make them run
<immibis> don't have to emulate all of linux, nor all of posix
<Ermine> There's bunch of software which is portable enough to work on a posix system without too much hassle
<Ermine> Also, emulating other systems is hard. Minix so far fails to emulate netbsd
<immibis> yeah, but you could also port it to work on dos, but why would you?
<heat> immibis, im aware, i do linux
<heat> POSIX is a silly target because POSIX is horrendous to work with
<heat> the literal lowest common denominator
<immibis> yeah, but if you can work with it, you can run on solaris and hp-ux!
<immibis> (which is nothing anyone cares about)
<heat> wdym
<heat> - Sent From My Sun SPARC
<Ermine> Wdym?
<zid> - My iphobe has been pleased do doing the sending.
<Ermine> - Sent from My HP Superdome
<klange> - Sent from my Gameboy Pocket
<heat> i have a gameboy color around
<heat> bestest console ever
<klange> I have a pocket, color, and advance sp (first gen frontlit garbage model)
<klange> what color is your color?
<heat> green
<klange> my man
<zid> gbc bad, it doesn't implement the window correctly for gb games
<Ermine> is it ARM?
<heat> no
<zid> GBC BAD
<heat> Sharp Corporation LR35902 (custom hybrid between the Intel 8080 and the Zilog Z80)
<klange> It's a Sharp LR35902 which is... weird.
<bslsk05> ​izik1.github.io: gbops - The Game Boy opcode table
<zid> It's a very nice cpu
<heat> this is way before ARM being ARM and ARMing all over the place
<zid> autoincrementing loads and no stupid ix,iy regs
<klange> The GBA was ARM with the LR35902 on the side.
<Ermine> gameboy advance sp has arm though
<zid> gba is arm7tdmi
<zid> NDS is arm9 + arm7tdmi
<heat> damn
<klange> The DS also dropped the LR35092 which is why it could only play GBA games and not original GB games.
<zid> plus you know, not having a slot for them
<klange> But the slot is the same?
<FireFly> I think the GBA titles used the Sharp LRetc for audio stuffs? (and of course for GBC/GB games in GB mode)
<zid> The carts use different voltages and the gba slot is at the bottom, and a gb cart is significantly taller
<klange> Being significantly taller doesn't matter at all.
<zid> so it'd be not very fun
<klange> That was also the case when you played original GB games in the GBA.
<zid> it does when it's the bottom slot
<FireFly> why?
<zid> ribs exist
<FireFly> your hands go on the side anyway
<klange> That's how the SP worked...
<zid> gba sp was also trash yes
<zid> least ergonomic thing nintendo ever released by a huge margin
<klange> It was the same as holding a pocket...
<Ermine> heat: also smol dirty bug report: there's an exception if you open and close top. System continues to work though. I didn't investigate it yet
<Ermine> gba sp's were popular over there, every cool kid had it
xenos1984 has quit [Read error: Connection reset by peer]
<heat> Ermine, top doesn't work (I don't have /proc yet), but i don't see an exception on my end
xenos1984 has joined #osdev
Arthuria has quit [Ping timeout: 246 seconds]
<vai> hi
<kof123> i have a super game boy somewhere...snes cartridge, just let you set a "palette" of like 8 or 16 colors. smatterings of mario paint
<kof123> > least ergonomic i thought virtual boy was heavy and uncomfortable
<kof123> (never used)
<immibis> it failed for a reason
<immibis> FireFly: the LR CPU is disabled in GBA mode
<FireFly> ah
<FireFly> hmm
<immibis> i got into DS homebrew for a little while and tested the equivalent of the DS in GBA mode. Setting the DS to GBA mode does stop execution of the extra processor.
<immibis> and turn off the extra screen.
<immibis> in the GBA->DS upgrade they did allow the GBA processor to also be used in DS games, mostly as an extra I/O processor in the official SDK
<immibis> (don't ask me *why* the DS needs an I/O processor - I don't know)
<immibis> (a few peripherals are only attached to that processor, like the touchscreen)