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
wgrant has quit [Ping timeout: 252 seconds]
theyneversleep has quit [Remote host closed the connection]
alpha2023 has joined #osdev
netbsduser has quit [Ping timeout: 268 seconds]
Turn_Left has quit [Read error: Connection reset by peer]
heat has quit [Quit: Client closed]
k_hachig has quit [Ping timeout: 240 seconds]
aejsmith has quit [Ping timeout: 256 seconds]
gog has quit [Ping timeout: 255 seconds]
aejsmith has joined #osdev
ramenu has joined #osdev
k_hachig has joined #osdev
k_hachig has quit [Ping timeout: 264 seconds]
theruran has quit [Quit: Connection closed for inactivity]
navi has quit [Ping timeout: 252 seconds]
<geist> nooo!
aejsmith has quit [Ping timeout: 256 seconds]
aejsmith has joined #osdev
cow321 has joined #osdev
k_hachig has joined #osdev
cow321 has quit [Remote host closed the connection]
cow321 has joined #osdev
cow321_ has joined #osdev
cow321 has quit [Ping timeout: 268 seconds]
cow321_ is now known as cow321
<zzo38> I had set up a NNTP for discussion of the operating system design that I intended to do.
<zzo38> The abstract system call interface can be defined, and then ABI of systems calls with specific instruction sets can be defined, and then the other specifications also can be made up, too.
Arthuria has quit [Ping timeout: 255 seconds]
<zzo38> The abstract message format is a sequence of bytes and/or capabilities. A "capability" in this case is similar than a file descriptor in UNIX, as though it can only refer to a UNIX socket which has been created with the socketpair function, although with some differences (many of the operations available in UNIX are not available).
goliath has joined #osdev
<zzo38> The kernel only knows of the message format like that, although a convention will be defined for higher-level interfaces for the format of these messages. For purpose of emulation and network transparency, the same endianness, integer sizes, etc are used for all computer types.
<zzo38> Maybe, there might even be possible to generate wrappers for C libraries that use opaque objects, that they can be used in the same process or in a separate process and the program can be written in mostly the same way in either case.
rustyy has joined #osdev
<zzo38> Do you like this? Do you have other comment/opinion relating to this?
aejsmith has quit [Ping timeout: 255 seconds]
aejsmith has joined #osdev
<geist> hmmm
<geist> sounds fairly interesting
cow321 has quit [Ping timeout: 252 seconds]
k_hachig has quit [Ping timeout: 246 seconds]
cow321 has joined #osdev
janemba has joined #osdev
cow321 has quit [Read error: Connection reset by peer]
cow321 has joined #osdev
pebble|2 has joined #osdev
cow321 has quit [Read error: Connection reset by peer]
pebble|2 has quit [Quit: KVIrc 5.2.4 Quasar http://www.kvirc.net/]
cow321 has joined #osdev
spare has joined #osdev
vdamewood has quit [Quit: Life beckons]
aejsmith has quit [Ping timeout: 255 seconds]
cow321 has quit [Ping timeout: 255 seconds]
aejsmith has joined #osdev
netbsduser has joined #osdev
gbowne1 has quit [Quit: Leaving]
cow321 has joined #osdev
divine has quit [Ping timeout: 255 seconds]
Left_Turn has joined #osdev
gog has joined #osdev
Turn_Left has joined #osdev
Left_Turn has quit [Ping timeout: 246 seconds]
gog is now known as pog
chiselfuse has quit [Remote host closed the connection]
chiselfuse has joined #osdev
<nikolapdp>
divine has joined #osdev
janemba has quit [Read error: Connection reset by peer]
aejsmith has quit [Ping timeout: 268 seconds]
aejsmith has joined #osdev
GeDaMo has joined #osdev
cow321 has quit [Read error: Connection reset by peer]
cow321 has joined #osdev
<nikolapdp> ILLUMOS
<bslsk05> ​'Demolition Man Illuminate clip' by Karl Jonsson (00:00:38)
<pog> don't you have something to do, don't you have someone to PESSIMIZE
<GeDaMo> :P
<nikolapdp> posix_pogspawn
<pog> POSIX
<pog> more like
<pog> idk
<nikolapdp> ILLUMOS
<pog> YES
<pog> ILLUMOS
<nikolapdp> so what os related projects is everyone working on
<pog> i debugged some things that i was struggling to debug recently
<pog> and now i'm moving on to deciding how to reimplement physical memory management
<zid> I do that every 4 weeks
<zid> then decide to ride bikes
<zid> and chase squirrels instead
<zid> I've so far absolutely hated every method I've come up with equally at least
<GeDaMo> That doesn't seem fair unless the squirrels also have bicycles :|
<zid> GeDaMo: Squirrels have built in hover technology
spare has quit [Remote host closed the connection]
<pog> squirrels can climb trees
<zid> the bicycle barely helps
<pog> a bike cannot generally
<zid> They just float across the ground at 30mph
<nikolapdp> just write something and move on
<nikolapdp> or you'll forever reimplement physical memorey management
<zid> noooo
<zid> you have to like it
<nikolapdp> then force yourself to like it
<pog> this is a small part of my larger overall refactoring
<pog> i think i'm making a microkernel
<zid> I could never bring myself to do that
janemba has joined #osdev
<pog> but i heard that microkernels are better
<pog> and that linux is not a microkernel'
<pog> so i'm going to do what linux doesn't out of principle
<zid> microkernels are great if you ignore all the things that they're no good at
<zid> which some people are mentally capable of doing
<nikolapdp> pog is opposite of heat
<pog> yes
<nikolapdp> i'd probably end up writing a sort of a hybrid
<nikolapdp> like fs drivers in userspace or something
<zid> yea fs drivers in userspace seems.. roughly fine
<zid> fuse is slow but I don't think it *has* to be
<zid> I think it just happens to be
<nikolapdp> it certainly doesn't have to be this slow
<zid> You might be able to make it faster than an in-kernel driver even
<nikolapdp> memory sharing would go a long way to speed it up
<zid> if you consider the bottleneck to be 'how many syscalls do I need to do', then perhaps usermode fs could win out, by making dirent lookups from cache not need a syscall etc
<nikolapdp> also some device drivers in userspace are also probably fine too
<bslsk05> ​'Cat Drone | AJ+' by AJ+ (00:01:41)
<zid> Are you going to just map the device's mmio into that userspace process, or is the userspace process going to have to sys_mmio_write
<pog> is a context switch faster than a syscall?
<pog> i guess that depends on whether a syscall triggers a context switch
<nikolapdp> zid: that's a decision for future me
<zid> pog: just map the fs code into every process duh
<nikolapdp> both seem viable to be honest
<nikolapdp> kek
<zid> no context switch needed
<zid> like gdi32.dll
<pog> yes
<zid> or kernel32.dll
<pog> i love windows
<pog> windows is objectively better than linux prove me wrong
<zid> no
<pog> i would use windows if it wasn't worse in ways that matter
<pog> like advertising to me
<pog> i hate being advertised to more than i like a better operating system
<zid> I'd love to use
<zid> xp64
<zid> but with ssd support and stuff
<zid> modern kernel, but with xp64 userland
<zid> the only thing they've added to the system dlls since then is a single dpi call to msvcrt
op has joined #osdev
<nikolapdp> kek
<nikolapdp> let's just port winxp to modern systems
cow321 has quit [Read error: Connection reset by peer]
<nikolapdp> it's effectively open source anyway :P
cow321 has joined #osdev
zxrom has quit [Quit: Leaving]
navi has joined #osdev
zxrom has joined #osdev
pog has quit [Remote host closed the connection]
<mcrod> hi
pog has joined #osdev
<netbsduser> pog: microkernels can be good but it's no trivial undertaking
<pog> yes
<mjg> macrokernel are good and it is trivial undertaking
<nikolapdp> hello mcrod
<mcrod> hello nikolapdp
<nikolapdp> when's your trip
node1 has joined #osdev
edr has joined #osdev
lh has quit [Remote host closed the connection]
ddevault has quit [Remote host closed the connection]
tom5760 has quit [Remote host closed the connection]
exec64 has quit [Remote host closed the connection]
vismie has quit [Remote host closed the connection]
hanemile has quit [Remote host closed the connection]
baraq has quit [Remote host closed the connection]
pitust has quit [Remote host closed the connection]
ursa-major has quit [Remote host closed the connection]
xtex has quit [Remote host closed the connection]
jleightcap has quit [Remote host closed the connection]
noeontheend has quit [Remote host closed the connection]
yuiyukihira has quit [Remote host closed the connection]
whereiseveryone has quit [Remote host closed the connection]
jtbx has quit [Remote host closed the connection]
nagitsu has quit [Remote host closed the connection]
sm2n has quit [Remote host closed the connection]
tommybomb has quit [Remote host closed the connection]
rselim has quit [Remote host closed the connection]
asymptotically has quit [Write error: Broken pipe]
patwid has quit [Remote host closed the connection]
gjn has quit [Remote host closed the connection]
alethkit has quit [Remote host closed the connection]
listentolist has quit [Remote host closed the connection]
staceee has quit [Remote host closed the connection]
whereiseveryone has joined #osdev
listentolist has joined #osdev
asymptotically has joined #osdev
jleightcap has joined #osdev
pitust has joined #osdev
jtbx has joined #osdev
staceee has joined #osdev
patwid has joined #osdev
hanemile has joined #osdev
nagitsu has joined #osdev
rselim has joined #osdev
vismie has joined #osdev
gjn has joined #osdev
yuiyukihira has joined #osdev
baraq has joined #osdev
sm2n has joined #osdev
ursa-major has joined #osdev
tom5760 has joined #osdev
<nikolapdp> ooh a net split
xtex has joined #osdev
noeontheend has joined #osdev
ddevault has joined #osdev
alethkit has joined #osdev
exec64 has joined #osdev
<nikolapdp> nice
lh has joined #osdev
tommybomb has joined #osdev
* mjg wave to survivors
<nikolapdp> i wave back to you
<zid> Actually it's only a netsplit if it involves the Split region of Croatia, otherwise it's just a sparkling disconnect.
duckworld has quit [Ping timeout: 250 seconds]
<nikolapdp> Split isn't a region, it's a city
<zid> never heard of a metropolitan area?
<mcrod> nikolapdp three months away
<zid> til nikolar doesn't believe in geography
<zid> makes sense though actually
<zid> given his views on the fully independent country kosovo
<nikolapdp> that doesn't even make sense
<mcrod> nikolapdp would you like some authentic ichiran ramen from osaka?
<nikolapdp> why not
<mcrod> ok
<zid> I've been eating nong shim ramen, it's niice
<mcrod> i'll be sure to throw it as far as I possibly can and hopefully it'll land in your hands
<nikolapdp> don't even know what it is but sure
<nikolapdp> ok, let me know when so i can catch
<mcrod> it's like.. one of the most well known ramen places in japan
duckworld has joined #osdev
<mcrod> apparently it ruins westerners on the idea of what ramen is, as it should
<nikolapdp> kek
<nikolapdp> what's in it
runxiyu has quit [Quit: ZNC 1.8.2+deb3.1 - https://znc.in]
<bslsk05> ​'PERFECT Ramen Noodles in Osaka Japan: Ichiran Ramen' by Strictly Dumpling (00:06:33)
<zid> noodles
<zid> you're welcome
<nikolapdp> what else
runxiyu has joined #osdev
<zid> water
<kof673> the toppings contain potassium benzoate </frogurt guy>
<nikolapdp> i could've guessed that one zid
<zid> https://www.ramenregretrater.com/wp-content/uploads/2016/12/nongshimshinramyun-bowl-1024x576.jpg This is what the one I keep buying looks like, the red is the flavour.
<zid> veyr red = very flavour
<mcrod> that looks like those ramen cups which are 40 cents
<nikolapdp> lol literally
<zid> It was $2 actually
<mcrod> if so, they are *extremely* unhealthy
<zid> which poisons does it contain?
<zid> (fucking hate that shit, total pet peeve)
<zid> I'm not a 500lbs american, I can eat whatever the fuck I want
<nikolapdp> lol
<zid> Either it's poison or it isn't
<nikolapdp> good counterpoint
pog has quit [Remote host closed the connection]
<mcrod> the sodium content in some of those cheap ramen cups is bad, very very bad for you, whether or not you're an american or a plain british man
<zid> high salt intake is only shown to do anything if you have a pre-existing condition
<zid> like from being a 500lbs american
<mjg> don't eat ramen ffs
<mjg> isn't this eastern hotdog counterpart
<zid> brb pizza cooked
<nikolapdp> yum pizzy
<mcrod> high salt content and pizza on top of it?
<mcrod> i wish i was your age again
* mcrod old
<nikolapdp> ):
<mcrod> for the record, i have high blood pressure and i'm nowhere near obese
<nikolapdp> well depending on how old you are, that's not uncommon
<mcrod> i'm 29
<mcrod> but it started when i was 27
<nikolapdp> ok not old enough
<nikolapdp> lol, never mind
<mcrod> some of it was psychologically induced
<mcrod> but in my latest round of blood work my cholesterol is way too high
<nikolapdp> you're too young to have cholesterol issues
<zid> The trick is to not be 500lbs, and then you can have as much salt as you like, and it's still only like, 3 grams, because it's on 1800kCal instead of 8000kCal
<zid> (This pizza is 1.6g and almost a thousand kCal)
<nikolapdp> heh
<nikolapdp> unless you have preexisting issues
<mcrod> there's a genetic predisposition to cholesterol/high blood pressure issues on my dad's side
<zid> I'm saying you can't get to dangerous intake levels
<zid> unless you're overeating
<zid> or literally eating salt
<mcrod> what are your feelings on smoking cigarettes occassionally?
<zid> czech republic apparently averages 13g salt/day diet wise :o
<nikolapdp> lol
<zid> presumably they're all poisoned to death 5x over
<nikolapdp> yeah clearly
<zid> mcrod: probably fine, the damage isn't purely cumulative
<zid> if you out heal it you only really have to care about random chance fucking you
<zid> (cigarettes fairly radioactive etc, could technically cause lung cancer in one puff, or a million puffs)
gog has joined #osdev
cow321 has quit [Read error: Connection reset by peer]
<kof673> mcrod, i strongly suspect your cat has an excalibur ...around dorado, the golden dolphin/swordfish > Arthur, son of the Great Bear, is the equivalent of Sut-Har of the Dog-Star > the Dog-Star, Bar-Sutekh, or Sut-Anubis
<mcrod> what
janemba has quit [Read error: Connection reset by peer]
<kof673> i thought you named it anubis lol
<zid> It's stochastic.
<kof673> it appears in alchemy land right there lol you will have to cross-reference :)
Arthuria has joined #osdev
<zid> Fun way to think about it is the combination of the two facts that wounds cause cancer, and smoking is peppering your lungs with tiny wounds from shotgunning hot smoke particles into them
<zid> wounds cause cancer because cell division causes cancer, and wounds stimulate a lot of cell division
<zid> okay last fun cancer fact, we're in the shitty part of the bell-curve for cancer. Animals with many fewer cells, like mice, don't really get cancer, the statistics just aren't there for it to happen very often. Animals with many *more* cells, like whales, get a lot of cancer, but the tumors are so small relative to their bodysize that they can basically ignore it.
<zid> Thank you for coming to my tedx talk
<gog> fancy rats get cancer all the time
<nikolapdp> you're welcome zid
<zid> We pretty much tell them to
<nikolapdp> not that we had a choice :P
<zid> "Here's half your bodyweight in uranium for breakfast"
<zid> "huh til uranium is toxic"
<nikolapdp> well better mice than us
cow321 has joined #osdev
<zid> I think they've bred the cancer rats to get more cancer, knocked out some cell repair genes or whatever
<zid> ah no, they've literally knocked out their T cells
<mcrod> god
<mcrod> I cannot believe Zephyr is the hot new RTOS in town
<zid> They're *incredibly* immunosupressed, so any cancer cell is guarenteed to grow into a nice big tumor
<nikolapdp> mcrod why can't you believe it
<nikolapdp> it's the only one i've heard mentioned in a while
<mcrod> because it is wildly complicated for really no reason
<zid> vxworks for life
<mcrod> at work we use freertos, but that will no longer be the case moving forward, it'll be zephyr
<nikolapdp> mcrod: sure, isn't that the theme of software in $CURRENT_YEAR
<zid> nikolapdp: I feel like microkernels, rtoses etc, are a domain where "I keep hearing about it" means "nobody uses it"
<zid> Because nobody *talks* about industrial control software
<nikolapdp> eh fair
<mcrod> nikolapdp yes
<mcrod> the technical term is enshittification
<nikolapdp> indeed
<nikolapdp> and when you avoid it, you're seen as a weirdo
<mcrod> it's the increased CO2 in the atmosphere, or the microplastics
<nikolapdp> wat
<mcrod> i'm joking you dummy
<zid> meh, microplastics are boring and probably totally inert
<nikolapdp> well that remains to be seen since there's been no significant research there that i am aware of
<mcrod> but yes, i have no idea why people masturbate to making things as complicated as they can possibly be
<mcrod> things that are complex naturally do exist, but to deliberately make things such is just harmful
<mcrod> hm that was weird
<mcrod> why did that happen
<nikolapdp> what was
<zid> no, complex naturally generally makes them *less* bioavailable
<zid> That's the thing about polymers, unless they unravel into monomers, they're not really going to react with much, it's sort of the *point* of them
<mcrod> oh so I guess irccloud did something funny
<mcrod> i saw my sentence three times
<zid> like, teflon is almost entirely inert, that's *why* nothing sticks to it. Unless you heat it to a couple hundred degrees and it starts to decompose, then it's a ridiculous poison :D
<mcrod> zid
<mcrod> i wasn't talking about that *at all.*
<mcrod> by "things that are complex naturally do exist", I was talking about shit like black holes
<zid> what
<zid> the fuck
<mcrod> what
<zid> That is the *least* meaningful thing I've seen said all week
* nikolar eats popcorn
<mcrod> too bad
<zid> mcrod: Catterpillars are bourgeoisie
janemba has joined #osdev
<zid> caterpillars*
<mcrod> you're not playing elden ring shadow of the erdtree are you
<zid> yes, because that'd make that make sense
<mcrod> these are unrelated questions
<mcrod> keep up
<zid> That's exactly my complaint.
<zid> Have you considered having a conversation, not a word salad
cow321 has quit [Read error: Connection reset by peer]
<mcrod> ok, we will now switch to the following
<mcrod> RTOS
<mcrod> zephyr sucks
<zid> we were already there!
<mcrod> we will now switch to the following: video games
node1 has quit [Ping timeout: 250 seconds]
<mcrod> are you going to play the elden ring DLC
<zid> No I don't think my gpu will run it
<zid> they bumped the system reqs and they were already pretty op
<zid> I'll watch someone play through it ofc though
node1 has joined #osdev
<mcrod> we will now switch to the following: nothing
<nikolapdp> ooh context switching
cow321 has joined #osdev
<zid> GeDaMo: Did you ever expedite any monsters?
<mcrod> :D
<zid> isles of sea of sky is too hard so I started replaying that instead (I say replaying, I just mean I started over, it's not like I 100%'d the first time)
<nikolapdp> * you and me
<nikolapdp> he tends to have that effect on people it seems
<zid> nikolapdp are you talking to ghosts
<nikolapdp> wouldn't you like to know
<mcrod> probably
<zid> I assume he was trying to privmsg shittalk but missed
<mcrod> who, me?
<zid> pdpirc not ergonomic enough
<nikolapdp> i need colours
<zid> nikolapdp: was it me you were shittalking?
<nikolapdp> wouldn't you like to know
<mcrod> maybe i'll wake up tomorrow and my illness will be completely cured
<nikolapdp> i do wonder if i can use ansi escape codes here
<nikolapdp> mcrod let's hope so
<mcrod> well it's almost over with
<mcrod> it's just that my nose is basically shut down
<nikolapdp> annoyin
<nikolapdp> hah
<nikolapdp> it works
<nikolapdp> i can output colour
<zid> My client has never even heard of ANSI sadly, I think it still strips it though
<zid> I can do this though
<nikolar> how
<nikolar> it's fancy
<zid> to stop people HACKING ME
<nikolar> how does that stop
<zid> if I parse ansi willy nilly then they can just inject random shit into my terminal
<zid> including the macros
<nikolar> no i meant how did you do the thing
<zid> Standard KHALED MARDEM BAY TECHNOLOGY
<zid> \x2 or something
<nikolar> ah
<zid> ah, bold is 0x2, italic 0x1d, underline 0x1f, strike 0x1e, colour is 0x03
<nikolar> interesting
<zid> SPOILERS
nikolapdp has quit [Ping timeout: 256 seconds]
<zid> I broke his pdp, yay
<nikolar> ah no
<nikolar> it was broken before that
<bslsk05> ​'DEF CON 31 - Weaponizing Plain Text ANSI Escape Sequences as a Forensic Nightmare - STÖK' by DEFCONConference (00:40:31)
<zid> re the other thing
<nikolar> i wonder
<nikolar> how do i add swap to bsd 2.11
<zid> swapon
<zid> if that doesn't work I am out of ideas
<nikolar> swapon hasn't been implemented under 2.11BSD.
<nikolar> lol
<nikolar> no, you're supposed to add a disk to fstab as swap
cow321 has quit [Read error: Connection reset by peer]
<nikolar> but i don't know how exactly
<zid> oh that makes sense
<zid> in the eff stab
<nikolar> eff stab?
<zid> (fstab looks like f stab not fs tab)
<nikolar> ah lol
xenos1984 has quit [Read error: Connection reset by peer]
<zid> 'st' being a highly bredable set of morphemes compared to 'fs'
<nikolar> indeed
<dostoyevsky2> is swap difficult to implement in bsd2.11?
<zid> it's implemented already
<zid> he just doesn't have any
<dostoyevsky2> If it were to have demand paging of executables... well, you'd have that part
<nikolar> i don't know how to enable it
<nikolar> it's probably already trying to swap
<nikolar> swap was basically necessary when you had a couple of mb of ram at most
<nikolar> (technically up to 4mb but that's pretty rare)
<dostoyevsky2> bsd2-src/sbin/swapon/
<zid> just go look at the fstab parser nikolar
<zid> or just change the fs type from whatever to swap and see if it magically works :P
<zid> on a different stolen entry
<nikolar> yeah i need a swap device first i think
<dostoyevsky2> > [bsd2-src/sbin/swapon/swapon.c] main() { puts("swapon hasn't been implemented under 2.11BSD."); exit(-1); }
<dostoyevsky2> they even wrote a man page for it
<nikolar> dostoyevsky2: i've just posted that dostoyevsky2
<nikolar> they copied from 4.3 presumably
<dostoyevsky2> yeah... can you do man swapon?
<zid> do you have fsdisk or something
<zid> idk bsd
<nikolar> apparently /dev/swap is just a hardlink
<nikolar> no, not yet
<nikolar> on this version, the partitions are hardcoded in the drivers lol
cow321 has joined #osdev
<dostoyevsky2> nikolar: Yeah, I was looking through the code, the problem is that swap is such a common name that it's hard to figure out if any kind of swap is implemented in the kernel itself... and that swapon with man pages and just a .c file printing its not implemented isn't helping
<nikolar> huh wait, it might have work to just add /dev/swap
<nikolar> ps works now at least
<nikolar> btw dostoyevsky2, it matters which patch level you're looking at
<dostoyevsky2> > #define _PATH_NETNIX "/netnix"
<nikolar> diskpart was added later
<dostoyevsky2> I wonder what netnix is
<nikolar> but it's still 2.11
<nikolar> ok well the networking doesn't fit into the kernel exactly
<nikolar> that's why netnix is the other part of the kernel that's basically just for networking
aejsmith has quit [Ping timeout: 268 seconds]
k_hachig_ has joined #osdev
<dostoyevsky2> But there is still only one kernel? Or are there technically two kernels?
<dostoyevsky2> Which reminds me I wanted to learn more about tun devices in Linux... I suppose it's about defining networks that are handled in userland?
<dostoyevsky2> but each time I try to understand the documentation I just don't understand anything
<nikolar> i haven't worked with tun but the idea is that you're handling the packets on your own
<nikolar> for example, vpns use it
<goliath> yes, tun/tap devices are virtual network interfaces. Work exactly like a regular network interface, except the opposite end is a file descriptor inside a user space process.
gog has quit [Quit: byee]
<goliath> reading on the fd returns packets "sent out" through the interface, writing causes the kernel to receive a package. For tun, it's IP packages, for tap, it's Ethernet frames.
gog has joined #osdev
gog has quit [Client Quit]
gog has joined #osdev
xenos1984 has joined #osdev
<dostoyevsky2> I wonder if I could give a docker container its own tun/tap devices... I guess they already have one... but I could probably do some internet firewalling for each docker container via custom tun/tap devices... well, as far as it's possible on the ip layer
<dostoyevsky2> nikolar: I wonder if swap relies on some MMU stuff that the pdp11 just didn't have, so they just removed that part from the kernel
gog has quit [Client Quit]
<nikolar> swap is working
gog has joined #osdev
<nikolar> like bsd 2.11 supports swap
<nikolar> the swapon command just wasn't implenmented
gog has quit [Client Quit]
<dostoyevsky2> it is... or did you just create a dumm /dev/swap so w/ps/top don't exit on start?
<nikolar> dummy /dev/swap didn't work but hardlinking a disk seems to have worked maybe?
<nikolar> ps works
<nikolar> but i don't know how to check if i can actually swap
nikolapdp has joined #osdev
<nikolapdp> can someone private message me
<nikolapdp> well i am silly, i have another account
<nikolapdp> ok, i think i am safe from missing private messages now that they are very red
m257 has joined #osdev
aejsmith has joined #osdev
node1 has quit [Quit: Client closed]
gog has joined #osdev
gog has quit [Remote host closed the connection]
<kof673> can't you just malloc(64k) or whatever the per-process limit is, sleep(), and run a few simultaneously? you do have a c compiler?
<nikolapdp> i do yeah
nikolapdp has quit [Remote host closed the connection]
<kof673> or just...shell fork bomb whatever
<nikolar> but how do i know that it's swapping
<kof673> ps :)
<kof673> i meant top...maybe there is another command...
<nikolar> no top
<nikolar> in this version
nikolapdp has joined #osdev
<nikolar> a
nikolapdp has quit [Remote host closed the connection]
nikolapdp has joined #osdev
<nikolar> b
gog has joined #osdev
<nikolapdp> hello gog
<gog> hello nikolapdp
<nikolapdp> who's it gogging
<gog> i'm gogging myself
dalme has joined #osdev
lojik has quit [Quit: ZNC 1.8.2 - https://znc.in]
lojik has joined #osdev
air has quit [Ping timeout: 268 seconds]
<GeDaMo> zid: the only game I've played recently is original Dungeon Keeper
<zid> well it wasn't a recent game
goliath has quit [Quit: SIGSEGV]
<zid> 2020, apparently
<zid> There's a monster's expedition + baba + sausage roll bundle on steam, only £45 at 20% off, oof
janemba has quit [Read error: Connection reset by peer]
node1 has joined #osdev
dgz has joined #osdev
m257 has quit [Quit: Client closed]
m257 has joined #osdev
node1 has quit [Quit: Client closed]
m257 has quit [Quit: Client closed]
janemba has joined #osdev
vdamewood has joined #osdev
Left_Turn has joined #osdev
m257 has joined #osdev
cow321 has quit [Read error: Connection reset by peer]
Turn_Left has quit [Ping timeout: 240 seconds]
xal has quit []
Turn_Left has joined #osdev
xal has joined #osdev
k_hachig_ has quit [Ping timeout: 268 seconds]
Left_Turn has quit [Ping timeout: 255 seconds]
josuedhg has joined #osdev
cow321 has joined #osdev
k_hachig_ has joined #osdev
alpha2023 has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
alpha2023 has joined #osdev
<dostoyevsky2> gotta goggle gogglers going gogging
<gog> hi
xenos1984 has quit [Ping timeout: 268 seconds]
xenos1984 has joined #osdev
<mcrod> hi
* mcrod hug gog
Left_Turn has joined #osdev
Turn_Left has quit [Ping timeout: 256 seconds]
xenos1984 has quit [Ping timeout: 246 seconds]
netbsduser has quit [Ping timeout: 264 seconds]
xenos1984 has joined #osdev
janemba has quit [Read error: Connection reset by peer]
cow321 has quit [Read error: Connection reset by peer]
netbsduser has joined #osdev
janemba has joined #osdev
m257 has quit [Ping timeout: 250 seconds]
cow321 has joined #osdev
node1 has joined #osdev
dgz has quit [Remote host closed the connection]
josuedhg has quit [Quit: Client closed]
<Ermine> It would be cool if intel sdm mentioned the fisrt processor which supports a given instruction
<zid> avx would have foiled that scheme anyway though
<zid> and sse4.1
<zid> and some of the secure enclave and other stuff
<zid> would work for the most part for the base isa though
node1 has quit [Quit: Client closed]
<mjg> when was ligma added
<Ermine> intel core i-balls
frkazoid333 has quit [Ping timeout: 264 seconds]
cow321 has quit [Ping timeout: 240 seconds]
<mjg> balls 2duo
<nikolapdp> balsium
k_hachig_ has quit [Ping timeout: 264 seconds]
<zid> That sounds like it should be the balsa wood tree's latin name
janemba has quit [Read error: Connection reset by peer]
k_hachig_ has joined #osdev
<nikolapdp> maybe
cow321 has joined #osdev
<zid> 2 hours remain
<nikolapdp> what will you do until then
<nikolapdp> some osdev?
<zid> touch myself inappropriately
<nikolapdp> ah, not in public i hope
op has quit [Remote host closed the connection]
* geist yawns
<nikolapdp> ello there geist
<geist> hola
<nikolapdp> how's it going
<geist> oh not too bad. for a monday i guess
<nikolapdp> heh
<geist> you know, back to the grind, etc
<nikolapdp> yeah, got it
<nikolapdp> get ya
<geist> but since i work from home on mondays it actually lets me kinda ease back into it
<nikolapdp> oh handy
<nikolapdp> btw do you know how to check if swap is working on my bsd 2.11 kek
<mjg> 8A
<nikolapdp> 8A?
<mjg> neomillenial smiley
<nikolapdp> eh
<nikolapdp> if you say so lol
<mjg> anyway if you asking if swap is configured, the tool for years is "swapinfo"
<mjg> but it plausibly was not there yet
<mjg> past that you probably gonna have to use the memroy and see
<nikolapdp> what's a memroy
<mjg> BUGS Does not understand NFS swap servers.
<mjg> :d
<nikolapdp> wat
<zid> wasn't top or something not working before
<zid> can you just run that
<mjg> nothing, swap on nfs is the shit
<nikolapdp> zid, no top, but ps works no
<nikolapdp> s/no/now
<zid> right, ps
<zid> time to load it up with processes then?
<mjg> try stat -v
<mjg> systat -v
<nikolar> damnit, i am getting random lockups whenever i try to do something else other than running irc
<mjg> wtf are you doing with this anyway
<nikolar> i wanted to check if systat was there
<nikolar> i thought i read it was yet to be ported
<mjg> so what are you doing messing with 2.11
<nikolar> literlly just messing with it
<nikolar> and running an irc client on top of it
<mjg> aight that's fair
<mjg> my seal of approval for sure
<mjg> there were people using that or similar version for a real product
<nikolar> lol
node1 has joined #osdev
<nikolar> what for
<nikolar> it runs on pdp-11s
<mjg> some embedded
<nikolar> where do you even get one of those
<mjg> the kernel is turbo tiny
<mjg> they ported it ot the arch, probably arm
<nikolar> ah neat lol
nikolapdp has quit [Ping timeout: 256 seconds]
goliath has joined #osdev
nikolapdp has joined #osdev
<nikolapdp> well one fsck later and i'm back
<zid> You didn't last very long :(
<nikolapdp> well it's rock solid when i only use it for irc :P
<zid> I wasn't complaining about the firmness, just how long it took
<nikolapdp> ):
node1 has quit [Quit: Client closed]
<mjg> maybe bsd is irc enconded in some way
<nikolapdp> irc encoded?
<mjg> the bsd name being irc
<zid> PRIVMSG nikolapdp :I put on my robe and wizard hat\r\n
<mjg> encrypted
<zid> oops
Turn_Left has joined #osdev
<nikolapdp> kek
heat has joined #osdev
<heat> bsdbsdbsdbsdbsdbsdbsd
<childlikempress> pronounced like skskskskkskskskskk
<nikolapdp> BSD 2.11 BSD 2.11 BSD 2.11
<zid> why don't you run good software on your pdp11?
<heat> it's 2.11BSD not BSD 2.11
<nikolapdp> zid what good sofwtware
<zid> os/2 warp
<nikolapdp> don't think that would run on a pdp
<heat> onyx
<zid> emulate it
<nikolapdp> heat when did you port onyx
<heat> never
<heat> it's your time to shine
<nikolapdp> could it even possibly run in 64k of address space
<nikolapdp> 128k if you really push it
<zid> My OS couldn't
<zid> zelda needs all 64kB
<nikolapdp> i know
<heat> not really
<nikolapdp> you could do the overlay remapping thing
<nikolapdp> maybe you could cram it in
<heat> i don't know how far you could squeeze it but 64K or 128K is too tight
Left_Turn has quit [Ping timeout: 255 seconds]
<nikolapdp> heat: yeah unsurprising
<zid> like, the gameboy itself uses 16bit pointers, so it's just linearly splatted into host memory
<nikolapdp> btw 128k is for 64k code and 64k data
<zid> as data
<Ermine> uclibc and busybox sites are suspiciously similar...
<zid> you could at least do some bank switching by putting some of zelda in .text
<nikolapdp> zid: like maybe you could possibly make it *run* barely
<zid> only if the game didn't need all of the address space
<zid> like on carts with no ram
<nikolapdp> but you wouldn't have a display anyway unless you wnat to output ascii art
<zid> zelda definitely needs all of it
<zid> it uses both rom banks and the ram bank
<heat> Ermine now see libpng and zlib
janemba has joined #osdev
<nikolapdp> well you get 4mb in total zid, so with a lot of remapping, you could fit it
<zid> obviously you could just say "lol no" and make all memory access happen over a serial port instead to a tape drive or something
edr has quit [Read error: Connection reset by peer]
<zid> but that would not be.. performant
<zid> nikolapdp: how, the emulator itself would get 0 data space wouldn't it
<zid> where do I put the registers
<Ermine> heat: those are different
<zid> zelda needs 65535 bytes of ram free
<nikolapdp> the kernel keeps the lower 56k code address space fixed and swappes the uppermost 8k
<zid> .text I have plenty of at least
<nikolapdp> but there's nothing stopping you from remapping however you want
<zid> so I could maybe hide the fixed rom bank there?
<nikolapdp> potentially
<zid> would need to recompile the emulator per-rom though :P
<bslsk05> ​i.imgur.com <no title>
<heat> it's joever
<nikolapdp> zid: i mean you could probably load it into ram one page? at a time from disk
<Ermine> lol
<nikolapdp> whatever rom it is
<zid> I can't follow that I don't know enough about pdp
<zid> how big is a ram page
<nikolapdp> 8k i think
<zid> I don't need all of the rom in ram
<zid> I need 65535 bytes of free contiguous ram though
<nikolapdp> yeah you aren't getting that lol
<zid> exactly
<zid> is there a way to hide data in .text?
<nikolapdp> you'd need to remap on memory access
<nikolapdp> i mean you could probably with some linker magic
<nikolapdp> i don't know how the linker works exactl
<zid> I mean, could you even address it
<zid> like, can I implement memcpy(.text, .data, 4096)
<nikolapdp> huh good question
<zid> or vice versa
<nikolapdp> i am not sure
<nikolapdp> if you don't do split address space (ie code and data is in the same 64k of address space) i am sure you could
<nikolapdp> but if you want 128k, you're dealing with split address spaces (64k for data and 64k for code) in which case i don't think you could copy out of .text
<nikolapdp> well, memcpy
<zid> exactly
<zid> so I don't think I could even free up any ram by hiding the fixed rom bank in .text or anything sadly :(
<nikolapdp> but, you do have access to up to 4mb of ram, you just can't access it all at the same time
<zid> yea 4millibits is overkill
<nikolapdp> so when the vm is addressing ram, you can just remap the page and access what you need in the vm
<zid> I only need like, 80kB total of text + data, but the data *needs* to be there
<zid> unless i do some horrendously slow bank swappin
<nikolapdp> you can do it, it just won't be a flat memory
<nikolapdp> i don't think it's slow really
<zid> like, every instruction does a bank switch
<nikolapdp> not very slow at least
<zid> rather than just running natively
<nikolapdp> like a lot of pdp-11s don't even have cache
<zid> right but just the fact that instead of doing mem[HL] = 4;
<zid> I am doing if(membank != HL%0x8000) bankswitch(8); ...
<zid> adds a lot of instructions onto the critical path
<nikolapdp> true
<nikolapdp> but pdp-11s aren't exactly speed demons to begin with so you know :P
<zid> which is why it matters imo
<zid> that's a backwards view
<nikolapdp> what i meant is that you won't be running anywhere near real time anyway
<zid> I did see someone who wrote a dynarec for gameboy to z80
<zid> he could run certain games at near realtime on his.. calculator
<nikolapdp> oh very nice
cow321 has quit [Read error: Connection reset by peer]
<zid> it needed tweaking per game to not run out of code space re the optimization set though
<zid> like, for some games, it was vital that you made some instructions fast but not others
<zid> you couldn't fit making them ALL fast into the code space at the same time though
<nikolapdp> ah mykes sense
<Ermine> Both fedora and opensuse have the same problem with nonfree codecs stored at separate repository, sometimes they get out of sync with core repos and you need to deal with version conflicts
<geist> nikolar: hmm, re checking for swap
<geist> er nikolapdp
<nikolapdp> got it :)
<geist> mine is newer enough to have top so it can see it
<heat> Ermine rpmfusion goated
<geist> (that comes as part of patch 470ish)
<nikolapdp> eh yeah no top, i am on 195 :)
<Ermine> heat: yes
<geist> vmstat maybe?
<heat> why are you not on the newest patch
<nikolapdp> geist: can you decipher this
<nikolapdp> procs memory page faults cpu
<nikolapdp> r b w avm fre ti tc pi po fr fc ov r0 r1 r2 h0 in sy cs us sy id
<nikolapdp> 1 0 0 222 2733 0 0 0 0 0 0 0 2 0 0 0 0 32 1 0 0100
gbowne1 has joined #osdev
<geist> vmstat 1 is pretty good too, it is closest to a top as you got right now
<nikolapdp> heat because i installed from tape instead of using the preinstalled image and it's a hassle to run through about 300 system pathces
<nikolapdp> geist it is nice indeed
<nikolapdp> fun to watch the memory usage kek
<geist> `man vmstat`
<heat> man man man man man
<Ermine> info !
<heat> you wish you had info
<nikolapdp> no info
<nikolapdp> i don't actually lol
k_hachig_ has quit [Ping timeout: 268 seconds]
<heat> GNU info is actually not that bad
<heat> it's like the HTML docs but in the terminal
<Ermine> no one but gnu uses it for docs
<nikolapdp> true
<nikolapdp> geist: well at the moment i have no processes that are swapping
<geist> seems like that is easy to fix
<nikolapdp> not sure if that's because they can't or because i have 4mb of ram
<heat> start chrome!!
<geist> you can also reduce the amount of ram
<nikolapdp> ah true
<heat> how tight are you on ram
<nikolapdp> btw i added another disk and set it's a partition for swap
<heat> normally
<Ermine> do you have X server?
gbowne1 has quit [Remote host closed the connection]
<nikolapdp> avm: 131 fre: 2733
<nikolapdp> not at all heat
<geist> anyway 'pi po' seems to be pages swapped in and out
<nikolapdp> Ermine don't think pdp-11s ever ran x
gbowne1 has joined #osdev
<nikolapdp> boths zeros
<geist> right, but you have to be doing something to cause it to swap
<geist> so runi t out of memory
<nikolapdp> heh just for bomb or something then
<nikolapdp> s/for/fork
<geist> or like i said reduce the amount of memory, 2MB should be fine
<geist> and then log in a few times, start a compile of the kernel
<geist> and say open vi on a few things
<geist> that tends to push it
<geist> i've found it starts paging things out even before it's out of memory
<Ermine> Woah wiki.osdev.org gained search suggestions once again
<nikolapdp> ah vi is a good one
<heat> oh yeah geist? it does proactive reclaim?
<geist> well, i dunno what the thresholds are,m but it seems to try to keep some amount free
<heat> ah ok
<heat> i think that's still way before the lotsfree algo stuff
<nikolar> ah seems to have hung
<geist> i ran mine with 1.5MB for a long time, and it wasn't swap thrashing by any means, but it would generally push if i logged in 2 or 3 times
<nikolar> does yours just randomly hang geist
<geist> like i'd log in on one telnet (telnetd is kinda expensive too) and run a kernel compile while watching it on another with top
<geist> negative. runs like a champ. never failed
<geist> but i dont run such an old version
<nikolar> maybe i do need newer patches then
<Ermine> patchen
<nikolar> PATCHEN
<heat> update to arch 2.11bsd
<heat> all the latest software
cow321 has joined #osdev
<geist> since you're on simh, if you're on the console of it you ca break in with ctrl-e and see what the cpu is up to
<geist> simh has a fair amount of debuggability
<nikolar> ah didn't think to check what was going on, just killed it
<nikolar> you got the prebuilt image, no?
<Ermine> Not news, but
nikolapdp has quit [Ping timeout: 256 seconds]
<Ermine> > MIPS architecture was being abandoned in favor of RISC-V designs
<geist> was? seems like it still is
<geist> i was just pondering deleting the mips port from LK last night
<GeDaMo> Even the MIPS company has moved to RISC-V
<Ermine> i copied that from wikipedia
<geist> since it along with microblaze is probably the least used thing that i care the least about
nikolapdp has joined #osdev
<nikolapdp> wasn't mips opened as an arch way before risc-v
<geist> yep. but riscv came along and stole all the thuinder
<Ermine> No afaik
<geist> also basically took out arches like openrisc too
<Ermine> well ok
<geist> well, 'open' yeah, i should retract taht
<nikolapdp> also sparc was opened since 2005 or something
<geist> mips i think was still generally a licensed thing, though the basic ISA is i think open
<geist> yah that's why you see things like LEON and whatnot floating around
<Ermine> so I guess everyone will sell arm-based routers now
<nikolapdp> yeah i just wonder why sparc wasn't what risc-v is now
<geist> depite what people say i think the riscv foundation is fairly well run, they're doing a good job of making sure everything that needs to be done gets done
<nikolapdp> well i am not sure how good for the arch it is to have a billion optional extensions
<geist> or it's amazing for the arch (in the short term)
<geist> that's the burning question
<GeDaMo> Fragmentation can be a problem for ARM too
<zid> Especially after I throw grenades at it
<nikolapdp> indeed zid
<nikolapdp> that would do it
<zid> It deserved it
<nikolapdp> absolutely
<heat> GeDaMo arm is a lot stricter wrt what it allows vendors to do
<heat> it used to be that you couldn't even add new instructions AFAIK
<GeDaMo> Did mjg ever fix their Cortex gcc problem?
<Ermine> (unless you're apple and you've got a lot of money to get this clearance i guess)
<GeDaMo> Apple have a founder's license
<nikolapdp> what's a founder's license
k_hachig_ has joined #osdev
<GeDaMo> Apple was part of the founding of ARM, as I understand it theri agreement means they can do whatever they want
<zid> we should go back to acorns
<nikolapdp> how where they a part of arm's founging
<heat> nah not quite, i think that's just a rumor
<zid> bbc micro 64
<nikolapdp> didn't arm split off from acorn
<GeDaMo> "The company was founded in November 1990 as Advanced RISC Machines Ltd and structured as a joint venture between Acorn Computers, Apple, and VLSI Technology." https://en.wikipedia.org/wiki/Arm_Holdings
<nikolapdp> hm
node1 has joined #osdev
<zid> GeDaMo was at the signing
<nikolapdp> kek
<nikolapdp> maybe he's got a founder's license too
<nikolapdp> and is waiting for the opportunity to use it
<GeDaMo> It seems the term I'm misremembering is "architectural license"
<heat> architectural license used to be quite limited too i think
<heat> you were severely limited in extensions because they didn't want to frag-out the whole arm ecosystem
<zid> That means they're allowed to depict both apples AND acorns on the sides of their buildings
<mjg> risc-v would have gainted traction if they named it 'leg'
k_hachig_ has quit [Ping timeout: 255 seconds]
<heat> now you can add all sorts of bizarro extensions including adding separate memory model modes
<nikolapdp> fancy
<nikolapdp> memory model modes?
<nikolapdp> like what
<mjg> let me tlel you rust memory model
<heat> arm sillicon can dynamically switch to a stronger TSO memory model using a chicken bit
<nikolapdp> aj
<heat> for ezpz x86 emulation
<nikolapdp> ah interesting
<heat> sorry, s/arm sillicon/apple sillicon/
<nikolapdp> do you know if apple added any instruction to speed up x86 emulation
<nikolapdp> heat: that's a retarded name, just call it arm
<nikolapdp> mjg: ah COMPLETELY SAFE MEMORY MODEL
<heat> why
<heat> they're not the same thing at all
<zid> they have x86's OSRSICIRESEI memory model on a toggle yea
<zid> rather than having to add a fuck load of arm locks
<heat> apple added a handful of extensions to speed up rosetta, this is one of them. not sure if there are actual new instructions they added for rosetta
<zid> MESI Ex Plus Alpha Turbo
<nikolapdp> i think i've heard they added some extentions to speed up some x86 addressing modes
<nikolapdp> not sure what was meant by that
<zid> probably the mesi toggle if I had to guess
<nikolapdp> maybe thinks like mov %rax, 8(%rdi, %rsi, 8) or whatever
<zid> rather than "addressing modes" it speeds up "accessing memory" though
<nikolapdp> that's like 5 arm instructions in one
<Ermine> anyway, they don't seem to suffer from this fragmentation
<zid> I thought arm actually had some shifts and shit built in
<zid> so it's only like, 3
<nikolapdp> eh maybr
cow321 has quit [Ping timeout: 260 seconds]
k_hachig_ has joined #osdev
GeDaMo has quit [Quit: 0wt 0f v0w3ls.]
janemba has quit [Read error: Connection reset by peer]
jjuran has quit [Ping timeout: 240 seconds]
<dostoyevsky2> nikolapdp: IIRC apple silicon can just switch into a mode that's very compatible to x86
<nikolapdp> define very compatible
<dostoyevsky2> > Rosetta 2's performance has been praised greatly.[12][13] In some benchmarks, x86-64-only programs performed better under Rosetta 2 on a Mac with an Apple M1 SOC than natively on a Mac with an Intel x86-64 processor. One of the key reasons why Rosetta 2 provides such a high level of translation efficiency is the support of x86-64 memory ordering in the Apple M1 SOC.[14] The SOC also has dedicated
<dostoyevsky2> instructions for computing x86 flags.[15]
<childlikempress> it does both the concurrency model and the flags
<childlikempress> concurrency model was already a standard thing also supported by other arm cpus
<childlikempress> and the flags emulation was made standard after the fact
<nikolapdp> so the flags are the magic sauce=
<bslsk05> ​dougallj.wordpress.com: Why is Rosetta 2 fast? | dougallj
<zid> compared to emulation, the mesi part is the bit that makes it fast
<zid> you need locks everywhence otherwise
frkazoid333 has joined #osdev
<dostoyevsky2> Looks similar to what they did for JavaScript emulation, make sure that the couple of things that are used often are done in hardware
<nikolapdp> javascript support in my cpu? just what i wanted
<childlikempress> zid: ????
Stary has quit [Quit: ZNC - http://znc.in]
CompanionCube has quit [Quit: ZNC - http://znc.in]
rustyy has quit [Ping timeout: 268 seconds]
<zid> arm is all wibbly wobbly on its memory ordering
<zid> compared to x86
<nikolapdp> yeah x86 has the strongest memory ordering of all of the currently used architectures that i know off
<nikolapdp> s/off/of
Stary has joined #osdev
<dostoyevsky2> nikolapdp: what's strong about the memory ordering in x86?
CompanionCube has joined #osdev
<nikolapdp> total store order, ie all cores agree on what order one of the core's writes
<nikolapdp> while for arm they writes can be reordered before writes
netbsduser has quit [Ping timeout: 268 seconds]
<childlikempress> zid: yes but that doesn't have anything to do with mesi
<childlikempress> nor locks
<dostoyevsky2> is that why my xlock cmpxchg CAS locks always sucked? Because it seems like it just froze the whole CPU and the other cores couldn't do anything while watching for the xlock
<childlikempress> no
<nikolapdp> childlikempress: you need locks when you're emulating the stronger ordering than the cpu you're running on
<childlikempress> perhaps you are looking for the word 'barrier'?
<nikolapdp> sure, that works too
<childlikempress> 'lock' means something and it's different from 'barrier'
<childlikempress> you could have a weakly ordered lock
<zid> yea I meant barriers
FreeFull has quit []
FreeFull has joined #osdev
heat3 has joined #osdev
heat has quit [Ping timeout: 250 seconds]
goliath has quit [Quit: SIGSEGV]
<dostoyevsky2> so seems like ansi sequence scroll regions only support startrow and endrow parameters, no columns... so I can use it for scrolling inside my listviews if they don't occupy the whole screen
stolen has joined #osdev
agent314 has joined #osdev
agent314 has quit [Ping timeout: 268 seconds]
<zzo38> One thing that should be included in my operating system design should be possibility of locks/transactions of multiple objects at the same time. Since the objects might not know each other, I am unsure how this would be handled, and if a system call is needed for this (or if ordinary messages between objects is good enough).
<zzo38> Do you know?
<zzo38> (And, if a system call is required, how would that work in case of emulation, network transparency, etc?)
node1 has quit [Quit: Client closed]
air has joined #osdev
<dostoyevsky2> zzo38: It can be tricky to get this right, and databases already have solved all kinds of transaction problems, so maybe starting out with sqlite could be a starting point... and for more simple data structures simple mutexes
josuedhg has joined #osdev
<zzo38> I do know about SQLite, although these objects are more general than SQLite (and SQLite cannot be used here anyways). As an example, you might want a transaction of two files; only once the transaction is committed and other processes read the new data (once they start their own read transaction; existing read transactions can read the old data). However, the file access may be accessed through a proxy.
<zzo38> It may also be on a different computer, or emulated.
nikolapdp has quit [Ping timeout: 255 seconds]
Arthuria has quit [Ping timeout: 268 seconds]
<childlikempress> zzo38: yes, this is hard. generally speaking the 'easy' approach is acquire multiple locks, but you have to make sure they are always acquired in the same order
<zzo38> However, you might not want to acquire any locks unless all of them can be acquired. You might also want to release a lock simultaneously with acquiring another lock.
dalme has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
<childlikempress> if you want 'harder' (more general, more scalable), then you are likely better off discarding the locks entirely
Matt|home has joined #osdev
<heat3> optimal
<mjg> dude
<mjg> embrace the fearless instead
<childlikempress> fearless optimalen
<heat3> instructions unclear i have embraced haskell instead
<dostoyevsky2> zzo38: Something like Paxos?
<childlikempress> are y'all just saying random concurrency-related words and hoping they mean things?