<moon-child>
hard to tell because of my browser's rendering but it appears not to be antialiased :\
<kazinsal>
considering it's being rendered by the VGA character generator, it would not be anti-aliased
<klange>
Well it's a baked bitmap of Deja Vu, so yes, it's not anti-aliased.
<klange>
I use it for kernel debug output, it's an option in the terminal (though with caching, the truetype rasterizer is just as fast now), and it was in a suitable format to throw at VGA so I did that just to see how it looks, and it looks fine!
<klange>
I could port my truetype rasterizer to the bootloader and use it in the video modes (the BIOS loader also supports video mode and defaults to it, but can be toggled to text mode if the video isn't working right)
<moon-child>
I mean, don't have to rasterise at boot--lots to go wrong there--just bake an aa version
<klange>
but that's so boring (and I'm not going to do it because here I'm using the same representation for both the graphical text rendering and what I throw at VGA text mode, which is neat)
<zid>
I use a pirated copy of that gnu font in reality, not fixedsys
<klange>
unifont?
<zid>
that's the one
<kazinsal>
pirated?! rms is having a sad : (
bgs has joined #osdev
captnemo has quit [Quit: WeeChat 3.7.1]
bgs has quit [Remote host closed the connection]
invalidopcode has quit [Remote host closed the connection]
invalidopcode has joined #osdev
hextuff has joined #osdev
<epony>
when people type truetype and typewriter, I always read teletype
<klange>
a modern terminal emulator is just a truetype teletypewriter
<kazinsal>
teletruetypewriter
<kazinsal>
ttty(4)
<epony>
don't know what you're doing to your fonts, but.. it's pretty easy to get crisp and readable fonts in X ;-) it was working on 8bit and 16bit computers pre-hires graphics too
<epony>
things seem to go wrong when people get "moved" to higher resolutions and implementations get mixed up with that "handling"
<klange>
truetype was originally designed purely for aliased monochrome rendering!
danilogondolfo has joined #osdev
<epony>
it's a pretty dramatic to get the overhead of vector fonts and get these wrong with anti-aliasing at the same resulting in worse performance and visuals than bitmap / raster fonts ;-)
<epony>
text that moves when you scroll and redraws pixels with artefacts and changes the shape of symbols and characters on movement and selection → classic misery of overdesigns gone awful (gnome's rendering libs are horrible)
<epony>
dejavu seems a nice font family indeed, I'm using these too
<klange>
TrueType and other vector font formats were designed for scaling, because having a two dozen versions of every bitmap font you want to display is infeasible
<epony>
but redrawing in terminals like XTerm is faster with raster fonts (the defaults in X are pretty decent)
<epony>
and rasterisation of vector fonts is not that bad overal, can result in significant improvements in performance and consistent layout / correct rendering
<epony>
what's bad is smudging and smearing of contours and moving shapes that leave artefacts and bad visuals in general from redrawing failures
<moon-child>
hmmm. It all originates in postscript, right? I guess printers have variable resolution too, heh
<epony>
postscript is a language
<kazinsal>
it was apple's competitor to postscript's Type 1 system
<kazinsal>
they originally were using it as a way to negotiate a slick deal on postscript in their printers and ended up accidentally just inventing a better vector font format
<bslsk05>
en.wikipedia.org: Printer Command Language - Wikipedia
<klange>
all the bonkers hinting stuff in truetype was purely to get downscaled glyphs to still spit out pixels, and a lot of modern text rendering "improvement" is "just stop doing the hinting
<kazinsal>
tl;dr Microsoft had a postscript-compatible PDL that they licensed to Apple in exchange for a TrueType license, and then Adobe went "oh no" and renegotiated its PostScript license with Apple as well as licensing TrueType for all their printer boards
<epony>
hinting was in the starting years of the LCD epoch ;-)
<epony>
such fun
<CosmicBitch>
what is this "hinting"
<kazinsal>
OpenType came from Apple coming up with an enhanced version of TrueType that only worked with QuickDraw GX and Microsoft going "well, I guess we'll come up with our own variant" and it being good enough for both Apple and Adobe to go "might as well join 'em" and leaving both TTGX and Type 1 to rot
<klange>
Hinting is aligning vertices in glyphs to grid coordinates, so that they produce full pixels.
<bslsk05>
en.wikipedia.org: Subpixel rendering - Wikipedia
<klange>
It has nothing to do with subpixel rendering.
<epony>
it has
<klange>
It does not.
<epony>
since hinting is used to improve legibility
<klange>
That's a side effect.
<epony>
on fonts that don't align to the pixels it improves the alignment to pixels
<klange>
That is true, but it has nothing to do with why hinting was developed.
<epony>
https://en.wikipedia.org/wiki/Font_hinting "At low screen resolutions, hinting is critical for producing clear, legible text. It can be accompanied by antialiasing and (on liquid crystal displays) subpixel rendering for further clarity."
<bslsk05>
en.wikipedia.org: Font hinting - Wikipedia
<klange>
Yes, but hinting was developed before any sort of antialiasing was happening with text.
<epony>
when using vector fonts at 90-120 ppi, that's low resolution for smaller font sizes
<epony>
maybe the Apple side of these technical details always had a different view on the implementation and terminology for aesthetics and rendering detail
<klange>
TrueType makes no specifications about antialiasing, it was all designed around monochromatic aliased rasterization, and the spec says that if the middle point of a pixel isn't within a glyph the pixel isn't drawn, which means without hinting you can easily lose entire lines because they were just a bit off at a smaller size.
LostFrog has joined #osdev
<klange>
Hinting pushes things around specifically to avoid that problem - and is a complicated mess of a bytecode format to allow very detailed control over the process.
<klange>
It's an added bonus that this process also produces more legible rendering with antialiasing and avoids fuzz, but it wasn't designed for it.
PapaFrog has quit [Ping timeout: 272 seconds]
<klange>
It also helps with non-subpixel antialiasing just as much - fuzz is a bit less noticable without the colorfringing of subpixel rendering, but still there especially when you start getting differeing misalignments between different glyphs.
hextuff has quit [Quit: hextuff]
<epony>
so, in graphical applications with vector fonts you benefit from antialiasing and hinting added on top of subpixel rendering on smaller resolutions, in textual applications raster fonts make much more sense and produce fast and legible results but less granular font scaling
<klange>
I dislike subpixel antialiasing, it's too prone to problems - and for a long time it was icky with patents! One of the last things my team at Apple did before I departed a decade ago was get rid of it - grayscale antialiasing only!
<epony>
and in some legibility cases people prefer to turn off anti-aliasing and subpixled rendering so hinting is not needed then either
<klange>
(of course, Apple could pretty handily rely on the one thing that makes subpixel antialiasing superfluous: higher DPI displays!)
<klange>
No, hinting is absolutely needed for non-antialiased text.
<epony>
since 200 ppi monitors in desktop sizes are not yet the massively popular models, it's all 100 ppi land and the artefacts of vector fonts are pretty pronounced on smaller font sizes.. which requires the smootihing techniques and it's less legible, so raster fonts are still a way to "solid" text
<klange>
This is what hinting exists for.
<epony>
it's a bit premature for gnome to drop raster fonts and they did that a couple of years ago, and turned on by default ligatures and what not (kerning like)
<klange>
Without hinting, the downscaled glyph has significant dropout - entire parts of the glyph do not fall in the middle of pixels that TrueType specifies as the sample point for non-anti-aliased rendering. Hinting widens the glyph to account for this. Egregious examples can be entire vertical strokes from letters like I or L going missing.
<FireFly>
somewhat higher ppi seems to be fairly popular nowadays, no?
<FireFly>
like, more than the ~90-100 from like 12 years ago at least
<epony>
no, it's 100-120 ppi on desktops still
<klange>
Actual PPI of displays has increased greatly, but we still pretend they are 90.
<epony>
only on small size panels
invalidopcode has quit [Read error: Connection reset by peer]
<FireFly>
I thought at least 2560x1600 is pretty much the norm for like, 24", compared to 1920x1200 being the high end a decade ago
<epony>
in the 20"-30" it's around 100 ppi, not around 200 ppi
invalidopcode has joined #osdev
<Mutabah>
1080p is still VERY common
<FireFly>
fair
<epony>
QHD in 27" is typically about 100-110 ppi
<klange>
My 2560×1440 displays are ~125ppi
<epony>
that's 24"
<klange>
My Cintiq is a dense boi at 170 - 1920x1080 at 13"!
<FireFly>
my lappy's 13" is 3456x2160 but I kinda wish it was a bit lower :p
<epony>
so is similar to the 17" on 1280x1024 or 10" on 1024x600 ;-)
<epony>
yes, laptops and small devices like tablets and phones now have higher resolution (density) at smaller screens but mainstream laptops are not even QHD yet
<FireFly>
what's QHD again? i keep forgetting the name->resolution mappings, they get so arbitrary after a point
<epony>
2560x1440
<FireFly>
ah
<epony>
it's WQHD technically but, is easier to type liks SD, HD, FHD, QHD..
<FireFly>
sure, but still 1080p or 1200p or a 13" lappy is very different pixel pitch to a 24" monitor of 10 years ago :p
<klange>
One of the first commonly available LCD displays was the ViewSonic VP140 - 1024×768 at 14.1" for around 91ppi.
<epony>
it's just now that 24" monitors are getting the QHD res as a standard (mainstream) it piloted on 27" in 2010
<epony>
viewsonic were never a popular brand here, it was all LG and Samsung flatrons after the Sony CPD series
<epony>
kind of does not exist in the low end mass market in the CRT epoch
<epony>
and some people were getting insanely absurd monitors like AOC ;-)
<epony>
CPD 100/200 series from Sony were 14" and 15" at 1024 and 1280 respectively
<klange>
For something a bit more high-end, SGI's 1600SW did 1600×1024 @ 17.3" for a ppi of 110.
<klange>
But it also cost $2500 in 1998 - that's north of $4k inflation adjusted, and it was not at all a common consumer item.
<epony>
at the peak of the CRT technology the VGA resolutions of 2048 x 1560 were achievable (maxed) in 21" and larger for previous models
<epony>
yep
<FireFly>
no way 2048x1560 was common for household CRTs though :p
* FireFly
remembers 1280x1024 CRTs (and 1600x1200 I guess on the higher end)
<klange>
It was much more common to see people running 1280×1024 on a 19" CRT.
<epony>
it was common for second hand monitors after some years
<FireFly>
really? o.o
<klange>
You'd try it at 1600×1200 and be amazed that it worked but it would be a bit fuzzy and Windows 98 would slow to a crawl :)
<FireFly>
I def remember only heraing about up to 1600x1200 in forums at the time around the turn of the millennium
<epony>
as soon as the LCD monitors were 1280x1024.. things swung rapidly towards LCDs
<epony>
the first generations of TFT were not very popular, but the TN panels made them really accessible
<epony>
and about 2005 it was game over for the CRTs
<klange>
very late model CRTs, like in the 2000s when LCDs were available on the consumer market, things got a lot higher-res, but the form factor of LCDs won out even with lower resolutions.
<FireFly>
makes sense
<FireFly>
consumers probably value the smaller size and lighter weight and other things
<epony>
it's better geometry and cheaper to produce
<klange>
A lot of it was also just that while those CRTs existed and supported those resolutions, your video card probably shat itself trying to produce them.
<FireFly>
oh point
<epony>
the next generations were IPS panels which improved colours and it's just NOW entering the mainstream laptops (second hands don't yet have QHD or IPS)
<epony>
well graphics cards rapidly improved in the 1998-2002 period
<epony>
so went from VGA to DVI
<epony>
and that peaked with maxing the DVI with dual link at 2010 for about 300 MHz bandwidth (maxed) WQHD
<klange>
I don't think I've ever owned a CRT with DVI - since VGA was carrying the analog signals to drive the tube anyway it was still common, and that was a limiting factor as well (and why your 1600×1200 was going to be blurry even if the shadow mask had the dots for it)
<klange>
(And I think CRTs that _did_ do DVI just used the analog pins anyway?)
<epony>
so VGA peaked in 2000-2002, DVI 10 years later, yet to see the DP peak (maxed at about 8K)
* moon-child
awaits eagerly the day when resolutions are high enough that we can just skip aa
<epony>
yes
<epony>
that's about the 200 ppi density
<\Test_User>
take a bunch of phone screens and line them up
<epony>
if you use a lense for your small screen device, you will be seing the artefacts :-)
<klange>
200 isn't enough, 300 probably is but you'll not see anyone do it in a phone even when those are already exceeding 300ppi
<FireFly>
not even apple?
<epony>
desktop need to jump from 100-120 to 200-240 first
<klange>
Apple just abandoned subpixel and only does grayscale.
<FireFly>
ah fair
<kazinsal>
I'm a terrible person who bought a 32" 1440p display so I could have BIG SCREEN and still be at the same PPI as my 1080p monitors
<FireFly>
I mean I guess it isn't really so expensive to do greyscale AA
<epony>
we're still in the 100 ppi epoch on mainstream desktop monitors
<FireFly>
so kinda makes sense to just keep it around?
<moon-child>
you kidding?
<FireFly>
or maybe it is, hm
<moon-child>
really good greyscale aa is super expensive
<FireFly>
ok fair
<kazinsal>
mind you I also bought it for 144 Hz gaming but the fact that it gives me a metric buttload of monitor real estate was a major factor
<klange>
It's also super useful if you ever want to cheat and do raster effects with your rendered text.
<FireFly>
but like, cheap AA based on just looking at one location within the pixel or so
<FireFly>
I figure it makes sense to keep cheap greyscale AA around even post-hidpi, but I guess it makes sense to not do costly polishing
<moon-child>
sort of
<epony>
cheating is how it always happens ;-) until the pixels are there, they are shared responsibility between adjacent pixel-buddies
<moon-child>
there is somewhat serious complexity to dealing with overlapping shapes
<klange>
(It's the only thing that will look good - non-aa text will look blocky no matter what scaling technique you use, and subpixel will have massive color smearing, but grayscale AA raster scales acceptably! - that's the real reason Apple did it, those compositing effects when you close an app or whatever need it)
<moon-child>
because eg you don't want to double-count the overlapping bits
<FireFly>
klange: makes sense
<moon-child>
klange: the proper solution is to let the app render itself under whatever weird transform
<moon-child>
have a protocol where the wm can tell the app how it's being transformed
<klange>
moon-child: that's more expensive than having a GPU scale a texture!
<FireFly>
also a lot more burden on the app developer that they probably don't want or care enough about (when the one who really cares about nice looks is the platform, kinda)
<bslsk05>
lobste.rs: How I still use Flash in 2022 | Lobsters
<klange>
Also if you want to have difficulty with overlapping bits, ooh boy... try rendering a semi-transparent window with a command list without rasterizing it first!
<epony>
and now for the maniacs, you can NEVER have fine colour representation in this generation of technology for text, because the adjacent pixels get side effects, and the colours look different when it's just 1 pixel next to another colour area
<moon-child>
FireFly: app developer is gonna use whatever ui toolkit, and the ui toolkit will deal with it
<FireFly>
mmm mabye
<moon-child>
and in the case of apple/ms/redhat ... the developer of the ui toolkit is also the developer of the wm
<FireFly>
people don't use those though :v (well, generalising, but having worked at a webdev place that did a lot of react native apps too)
<klange>
Anyway, I had a lot of fun with my truetype rasterizer, and I think my text looks quite acceptable.
<moon-child>
klange: that is hard, I will grant you :P
<epony>
so you get to pick lower contrast background at equal distance to your colours first, and then deal with your display inability to render accurate colours in adjacent pixels with "corrections" in the same way (but different algorithm) that are needed for subpixel rendering
<moon-child>
(and I will note: whereas compiz is out of style, and apple kind of stands alone w/its 'genie animation', rendering under transform is more important than ever now, given vr)
<epony>
so it still has a distance to go, after getting the high-pixel density next-generation resolutions on the desktop
<epony>
compositing effects are kind of cool
<epony>
and given the fact that modern graphics cards do 2D in their 3D shaders and rendering directly in hardware primitives, for about 20+ years already
<epony>
it's kind of stupid to not use the 3D for rendering and compositing in the software
<klange>
I do scaling effects on window open/close, I support rotation, transparency... all in software, because I don't have drivers.
<klange>
I also support blur-behind but that's a really expensive one I reserve for special cases.
<epony>
there are no unaccelerated graphics any more except on specialised 2D rasterisation hardware and video processing graphics like the Matrox series that have standalone high-performance 2D and video layering
<moon-child>
might be able to do a higher-quality sample if you simd
<klange>
(it looks even worse with the bitmap font!)
<moon-child>
omg that's bad
<klange>
(I'll note in the other screenshot the left terminal is TrueType with grayscale AA, and the right terminal is the bitmap font; I don't support non-AA truetype rasterizing due to the aforementioned requirement for hinting to not get dropouts - the bitmap font wasn't even baked with my rasterizer, I used FreeType to do it before I even started working on mine.)
<ddevault>
ayy firefox opens ARMARM today
* Ermine
waves his ARMs
<FireFly>
(ARM)²
<FireFly>
I do appreciate ARMs punnery
<FireFly>
or Arm now ig
<Ermine>
It was advanced risc machine
<Ermine>
or acorn risc machine
<Ermine>
ddevault: did you try running Helios on your Pinebook?
<ddevault>
not yet, someday
<ddevault>
current target is rpi4
<ddevault>
will attempt pinephone at some point
<ddevault>
I bet I can make it send/receive SMS pretty easily
<ddevault>
does anyone have a readily copy/pastable example of using tlbi on aarch64 to invalidate a specific page in a specific ASID
<klange>
The web version of the ARMARM is one of the worst-designed websites it has ever been my displeasure to use, and I live in Japan where the local web design is infamously horrible.
<ddevault>
reading the ARM manual and it has too many words
<epony>
you mean firefox will now target UNIX instead of WIN/DOS ?
<Ermine>
and too many letters
<epony>
when FF gets to run well on LIN/DOS, then it would be targeting UNIX
<epony>
for now it runs well on JVM and on WIN/DOS
<ddevault>
>Register bits[45:44] are the SCALE field that is the exponent element of the calculation that produces the upper range
<ddevault>
kill me
<klange>
Don't worry, your upcoming seizure as you continue to read the ARMARM will take care of that.
<ddevault>
tempted to just invalidate the whole TLB and move on with my life
<Ermine>
out of context it is even more obscure
<klange>
Looking at all my tlbis... they're all vmalle1is :D
<klange>
which I think is cargoculted from something in m1n1
<Ermine>
okular hits 100% of CPU consumption while looking for this phrase, but Linux moves to different kernels somewhy
<epony>
in general, these are microcontroller designs which have been outgrown to be microprocessors and systems-on-chip
<epony>
the complexity is serious, comparable to the entire x86 machine standards in one hubrid ASIC+
<Ermine>
ddevault: I guess hare translates "tlbi_vae1" function names to "arch.tlbi_vae1" ?
<epony>
hybridisation is happening on chipsets on generic PCs for a long time too
<ddevault>
yeah
<ddevault>
adds namespace
<klange>
aarch64 is pretty clean-slate
<epony>
the northern and southern bridges and their fused chipset are moving towards the CPU, it's only high performance and waste heat limit than integration
<epony>
but the central processor has now a memory controller and an input-output controller and multiple cores and separate dies (semiconductor cross connects)
<epony>
waste heat is a serious problem for SoCs
<epony>
so much as to mandate the separation in remote areas of blocks that share functionality and complex power management on each functional block with dynamic scaling (rapid)
<epony>
the drawings that are shown on "product presentations" are very simplified and non-technically accurate
<klange>
There's some timer stuff in there that's kinda useless, there's a reset vector, but the bulk of it is the efivars.
<ddevault>
bad look if your install process involves "after install, boot linux and run this efibootmgr command to configure the bootloader"
<klange>
just install your bootloader to boot${arch}.efi and be the only one :D
<Ermine>
There might be other entries still
<klange>
just nuke everything else and the fallback behavior will take care of it :)
<Ermine>
take care to not nuke nvram so your device doesn't brick accidentally
<ddevault>
well, you need to edit variables if you want to set a kernel command line
<klange>
that's why I have an efi loader that has a little text editor in it
<ddevault>
hard pass
<ddevault>
thanks
<klange>
You could also do something like read them from a file in your EFI stub.
<Ermine>
I mean, there was a story, where guy rm -rf'ed their linux and that wiped nvram, because efivarfs was mounted rw, and that laptop died because of broken firmware that couldn't reinitialise nvram
<epony>
don't forget, you're treating ARM like a 16bit epoch CPU in its capabiltiies, these now support virtualisation and extensions for data processing and cryptography too, and have integrated graphics, low precision and high precision maths, and periphery
<epony>
and the memory is in there too
bxh7 has joined #osdev
<klange>
Hm, my rpi stub is still hardcoding command line options... I should switch that to getting them from the dtb... there's a lot I've hardcoded for the rpi400.
<GeDaMo>
ddevault: I just looked at the ARM in Firefox and it looks like it works but only displays up to page 8050 :/
<ddevault>
sometimes I have to refresh to get to the register index
<ddevault>
try clicking register index in the ToC and hitting refresh until it works, or until you give up
<GeDaMo>
I'm going to try and split it into smaller files
<ddevault>
breaks references
<ddevault>
but good luck
<GeDaMo>
Yeah, I know
<ddevault>
I depend heavily on references
<GeDaMo>
pdfseparate segfaults :/
<epony>
you're using a scripting language ;-)
<moon-child>
lol
<epony>
that inflates memory use 2x
<epony>
(compared to the data processed)
<ddevault>
just implement a PDF encoder/decoder in Hare
<ddevault>
see you in 3 months
<epony>
years
<epony>
the place and time is here
<epony>
hare there, achilles runs with lead sandals
<Ermine>
GeDaMo: maybe malloc fails due to the size of the file?
<GeDaMo>
I have memory! :P
<ddevault>
I sure hope it doesn't malloc the whole file
<ddevault>
though it's only 70M so
<kaichiuchi>
hi
<Ermine>
Ah, this is poppler, which is glib based
<Ermine>
hi kaichiuchi
<Ermine>
GeDaMo: valgrind says this is a stack overflow
<epony>
the pdf format supports internal compression
<GeDaMo>
:/
<epony>
and vector graphics drawings are killing even reasonable machines
<epony>
(on complex layouts and larger schematics)
<Ermine>
HEAP SUMMARY: in use at exit: 89,698,879 bytes in 171,006 blocks
invalidopcode has quit [Read error: Connection reset by peer]
<GeDaMo>
I tried a different program called pdfexplode which produced a lot of apparently blank pages
invalidopcode has joined #osdev
<Ermine>
At least it didn't exlode your machine
<GeDaMo>
... yet :|
<epony>
you know compilation and other processing can happen on a larger machine targetting the smaller
<ddevault>
look at you with your fancy "larger machines"
<epony>
it's not really intended to work on the small machine interactively even on such "capable" modern variants
<ddevault>
damn bourgeois kernel hackers
<epony>
the luxury is in the hands of people creating 10K page documents
nyah has joined #osdev
smach has joined #osdev
<moon-child>
ulimit?
seer has quit [Read error: Connection reset by peer]
<Ermine>
moon-child: unlimited
bgs has joined #osdev
jjuran has quit [Quit: Killing Colloquy first, before it kills me…]
jjuran has joined #osdev
DanielNechtan is now known as bombuzal
Burgundy has joined #osdev
Ermine has quit [Quit: Cya!]
* kof123
mumbles about ancient lectern format...you can pre-render things for known resolutions...not unlike bitmap fonts versus scalable...
invalidopcode has quit [Remote host closed the connection]
invalidopcode has joined #osdev
Ermine has joined #osdev
Ermine has quit [Remote host closed the connection]
Ermine has joined #osdev
smach has quit []
<epony>
in view of modern times, the single greatest mistake is not using the hardware accelerators and built-in CPU extensions for fast and assisted processing of data
<epony>
it's like 22 years since graphics are 3D capable and suitable for use of that in applications, and the graphics servers provide that functionality
<epony>
they were usable since 1996-1998 but 2000 in general is when most graphics progressed to useful 3D rendering in place of the 2D/3D separation
<bslsk05>
en.wikipedia.org: Hardware acceleration - Wikipedia
<kaichiuchi>
god i forgot how nice i3 can be
stosby has joined #osdev
stosby has quit [Client Quit]
potash has quit [Read error: Connection reset by peer]
potash has joined #osdev
<kaichiuchi>
and vim
<kaichiuchi>
i think i’m getting old now
Ermine has quit [Ping timeout: 268 seconds]
Left_Turn has joined #osdev
k0valski18891 has quit [Quit: Peace out !]
Turn_Left has quit [Ping timeout: 272 seconds]
Ermine has joined #osdev
dude12312414 has joined #osdev
_HIA has joined #osdev
invalidopcode has quit [Remote host closed the connection]
invalidopcode has joined #osdev
<ddevault>
one thing I'm unclear of about the ARM system timer is how the interrupts from it actually happen
<ddevault>
do they raise an IRQ? can it be programmed?
_HIA is now known as unimplemented
<ddevault>
okay yeah
<ddevault>
raises IRQ 27 via the GIC
Burgundy has quit [Ping timeout: 268 seconds]
k0valski18891 has joined #osdev
unimplemented has quit [Read error: Connection reset by peer]
Burgundy has joined #osdev
jafarlihi has joined #osdev
<jafarlihi>
In FreeBSD ext2 FS, ext2_root calls VFS_VGET where one of the arguments is `ino`, which is defined as "unique number assigned by fs when vnodes are first created" in manual. Does anyone know where these vnodes are "first" created?
<epony>
check that symbol in the BSD cross reference
<epony>
ext2 is not part of FreeBSD
unimplemented has joined #osdev
<epony>
as in, not designed there, and is either an import from Linux or a minimal reimplementation (the second option more likely)
<epony>
you'll see ext2 support in all of the three BSDs
<jafarlihi>
I'm trying to implement FS, just trying to understand where these vnodes are first created
<epony>
bascially ext2 is a "clone / descendant" late re-implementation of UFS/FFS in the Linux kernel space with changes betwee ext (early experimental designs) and ext2 (with ideas from BSD)
<epony>
yes OK
<epony>
now get the "design and implementation of the 4.4BSD system" by McKusick et all
<jafarlihi>
I already have FreeBSD design and impl, it doesn't say much about fses, is it different for 4.4 book?
<epony>
not much
<epony>
it should because that's the book on the OS and the FS is integral part of it
<epony>
so check again in the book
<jafarlihi>
It just generally covers what fs is, not much helpful for implementer
<epony>
can't have an OS that gave UNIX the UFS and its FFS rework withou it
<epony>
you're mistaken
<epony>
it has code snippets too and data structures
<epony>
and logic how it operates
<epony>
read the earlier book if you like
<jafarlihi>
Why did you recommend the earlier book? Anything better about it?
<epony>
there is also important detail on the buffer cache, don't skip that
<epony>
I don't know what's in the later edition books ;-)
<jafarlihi>
ok thanks
<epony>
the 2nd edition of the book (FreeBSD) is from 2014 and has 1152 pages..
<epony>
FreeBSD has extra details like GEOM that you probably will not be implementing
<epony>
so, chapter 9 pages 506 to 615 is about the Fast Filesystem
<epony>
that's what you need, the first short description in pages 70-75 are just "general details"
<epony>
go further in the book
dude12312414 has quit [Quit: THE RAM IS TOO DAMN HIGH]
<epony>
9.2 Structure of an Inode p508
smach has joined #osdev
<epony>
let me check the older books too
<jafarlihi>
ok i see thanks
<jafarlihi>
what other books are there?
<epony>
Linux kernel documentation on the ext2
<epony>
and LPI (linux programming interface)
<jafarlihi>
I'm not interested in ext2 besides how it interfaces with FreeBSD
<bslsk05>
bugzilla.tianocore.org: 4234 – UefiCpuPkg reaches a new low by BLATANTLY ignoring 32-bit Intel processors in commit 73ccde8f6d04
<epony>
or BSMD.. whatever works for you
<kaichiuchi>
hah
<epony>
once you compile your liloinux into lilnucks.. it's not very interesting
<Ermine>
"BSD and LSD were invented in the same place..."
<epony>
that's about the funniest most important "scarification" to get on LeanUX
<epony>
a couple of sessions tweaking and recompiling the kernel, and then redo that monthly to keep the hardening shit tougher during the rainy season
<epony>
maybe LSD is invented somewhere else, but was practiced mostly in the English and new-England youths
<epony>
DDT / LSD.. experimental spraying of young shoots
<epony>
seems to have stuck with Donny the agent O'Range
<epony>
anyway
<epony>
I heard you like HURD
<epony>
the GNU HURD
<epony>
(use capitals like it's 1969 LISP AGAIN)
<epony>
at least the Rpi is large enough to run Object Oriented Programming.. techniques of mastery and amazement in COMMON LISP
Turn_Left has joined #osdev
<epony>
it's only 40 years late to save the Lisp Machines, Inc.
<bslsk05>
en.wikipedia.org: Orphaned technology - Wikipedia
dude12312414 has joined #osdev
<heat>
"Ignoring proper error handling is lazy and dangerous. It's the kind of attitude for which I would instantly fail any candidate at the interview stage. It's slightly worrying to see it exhibited in someone with push access to the EDK2 repository. On the plus side, this suggests that Intel-authored EDK2 code is likely to be a very productive place to search for Secure Boot exploits. :)"
<heat>
holy shit i love the fucking drama
<zid>
heat what is wrong with my cat
<heat>
is it barking
<zid>
she's hiding in the spare bedroom and hissed at me when I went to check on her
<kazinsal>
the part where they realize they actually found a QEMU TCG bug in the process is amazing
dude12312414 has quit [Client Quit]
<epony>
emulator bugs, unheard of
arminweigl_ has joined #osdev
<epony>
virtualisation is like that too
arminweigl has quit [Ping timeout: 252 seconds]
arminweigl_ is now known as arminweigl
<epony>
if you combine the two you get double whammy
<epony>
the only thing you'd dearly miss are bugs in the host kernel, and in the compiler.. the CPU has them just fine™
<epony>
oh, and that language you're using.. it's not working
<epony>
the only good thing.. the standard library ;-)
<epony>
(or much more, the standard which it tries to work with0
<gog>
zid: is she lethargic
<gog>
and is she getting enough water
<gog>
cats tend to do that kind of thing when they're ill
<Ermine>
poor kitty :(
<gog>
or something startled her and she's feeling ways about it
<gog>
but yeah keep an eye on her and see what she does if she keeps doing this and doesn't eat or drink anything then a vet visit might be in order
elastic_dog has quit [Ping timeout: 252 seconds]
elastic_dog has joined #osdev
<zid>
she seems totally fine, just in a total mood
<zid>
I think heat kicked her
<zid>
he's like that
<gog>
:o
<gog>
no kick kitty
<gog>
3:<
<zid>
she's been bored or something for a couple of weeks though
<zid>
usually she sleeps on the sofa on a certain cushion but she's been all over the place
<zid>
she sometimes does this though, re-trials all the sleeping spots