Redesigning video system

Discussions on more advanced topics such as monolithic vs micro-kernels, transactional memory models, and paging vs segmentation should go here. Use this forum to expand and improve the wiki!
User avatar
Solar
Member
Member
Posts: 7615
Joined: Thu Nov 16, 2006 12:01 pm
Location: Germany
Contact:

Re: Redesigning video system

Post by Solar »

The point where rdos blames the language:
rdos wrote:...C is not adequate for graphics... [...] I proved it when I had to move the glyph cache from C to assembly in order to get decent performance.
The point where rdos blames the compiler:
rdos wrote:it was the C compiler that couldn't do the 4-level lookup without loading the same selector four times. [...] There where a couple of other issues as well where the C compiler produced slower code, but the inability to mix flat and segmented pointers in the C compiler was the main reason it lost big time.
The point where he claims it never happened:
rdos wrote:I don't need compiler developer's to support my design choices. [...] any need to change the compiler because of requirements in RDOS can be done regardless of what compiler writers do.
I rest my case.
Every good solution is obvious once you've found it.
rdos
Member
Member
Posts: 3276
Joined: Wed Oct 01, 2008 1:55 pm

Re: Redesigning video system

Post by rdos »

Yeah, I rest my case since Solar doesn't seem to be able to read. :roll:
User avatar
Owen
Member
Member
Posts: 1700
Joined: Fri Jun 13, 2008 3:21 pm
Location: Cambridge, United Kingdom
Contact:

Re: Redesigning video system

Post by Owen »

rdos wrote:
Owen wrote:We do. It's called valgrind. It checks more than segmentation can check (e.g. uninitialized reads)
Not a chance. I've tried all that, and it doesn't work. My memory corruption error in the application is still there. What I eventually would want to do is to compile our application for a 32-bit compact memory model, and eliminating all these issues once and for all. All I need is a new executable format, which takes some effort to create.

The reason why valgrind will not solve it is that it cannot guard against a non-existent memory protection system (page protection doesn't solve my issue above, simply because the error disappears when memory is allocated page-based instead of byte-based. If any instruction can potentially overwrite anything else, there is no software that will solve it. Only hardware can solve that, and the hardware support is called segmentation.
Do you actually know how Valgrind works?

Hint: It doesn't at all use the paging mechanism inherent in the processor. Another hint: its a virtual machine.

Is it perfect? No, but then neither is segmentation.
User avatar
Solar
Member
Member
Posts: 7615
Joined: Thu Nov 16, 2006 12:01 pm
Location: Germany
Contact:

Re: Redesigning video system

Post by Solar »

But that is Valgrind's fault, isn't it? :twisted:
Every good solution is obvious once you've found it.
User avatar
qw
Member
Member
Posts: 792
Joined: Mon Jan 26, 2009 2:48 am

Re: Redesigning video system

Post by qw »

Okay, now I can't see anymore where rdos' argument is coming from.
User avatar
Combuster
Member
Member
Posts: 9301
Joined: Wed Oct 18, 2006 3:45 am
Libera.chat IRC: [com]buster
Location: On the balcony, where I can actually keep 1½m distance
Contact:

Re: Redesigning video system

Post by Combuster »

Deja Vu.

Faith is what makes people believe things even in the face of proof of the contrary. Rdos' religion is that he's always right (often at the cost of the rest of the world). This is like, the umpteenth time we've had this discussion and somehow it always works.

Let's shut up and put that guy on our ignore lists before someone blows himself up in the name of faith... although that might just solve the problem
"Certainly avoid yourself. He is a newbie and might not realize it. You'll hate his code deeply a few years down the road." - Sortie
[ My OS ] [ VDisk/SFS ]
Locked