This idea is nice but old. After reading most of the PCLSR paper at the URL you mentioned its clear to me that most of the problems addressed by PCLSR are addressed today by multithreaded kernels and fine grained locking.
I can see why PCLSR might have been necessary and feasible on a small PDP-6 operating system but it would be both a pain to implement and unecessary for today's OSes and machines.
Besides, moving XFree into the kernel would be of dubious value at best. Moving certain critical _parts_ of XFree into the kernel might be a win, like the graphics drivers. After all, why the heck should a user space application like XFree be doing PCI management?
1: Why would you want to have more than one graphics card?
For games, the answer is obvious: You can look left and right. Flight sims with 3 monitors, etc. More monitors = wider view. There are many uses for multiple monitors running high performance graphics applications.
In other words, one AGP card (the target is the motherboard, master is the card) has to be switched off during AGP transfers. There is a reason AGP is a Port, not a Bus.
If that's the case, then multiple AGP's could be hung off a crossbar. This increases latency, but given that going out to any kind of card incurs more latency than going to memory, most applications are already optimized so they only have to touch the card as infrequently as possible already.
Anwyay, we all know that most cards don't even use AGP like they were supposed to (i.e. use main memory as texture memory) otherwise they wouldn't have such large on-board memories for textures.
This one can't be a winner, because sending it through the preprocessor has almost unobfuscated it enough to make it readable. I've played a little tetris program somebody made that was practically immune to analysis other than to the compiler:-)
Here's a ansified and more simplified version of the code that compiles. I think there was a bug in the preprocessing on the lines that are commented out in main. It still runs a simple program, though.
Due to slashdot's wacko html, tabs are missing and I can't put in the includes for stdio.h and stddef.h. (Yes, I'm sure there's a way to do it but I'm lazy)
Enjoy:
int *C,E[999],L[999],M[999],P[999],l,i,j; char B[999],F[2];
The cat is both dead and alive...but only instantaneously.
The interactions of the myriad of particles in the cat cause the wave function to collapse almost immediately.
Thus, by the time you open the box the cat has either been alive or dead for quite some time. In other words, you missed "witnessing" the superposition. In fact, the odds of witnessing a cat in superposition are close to the odds of watching all of the air in the room congregate in the wastepaper basket under your desk (which is a classical physics problem). It's possible but extremely improbable.
That's how I understand it, anyway. Corrections are welcome.
The movie industry isn't forcing you to buy or use windows. You can purchase a DVD player for your TV and bypass the whole computer thing.
So they aren't forcing us to buy Windows but they are forcing us to buy extra hardware (a TV DVD player)? This is basically saying the same thing.
Unless there is something that is patented in the DVD playback process then there is nothing that should stop anybody from making a player if they can figure out how to do it. Just because all the current players are closed-source and industry controlled has no bearing on the creation of a reverse engineered open-source player.
This is analogous to the commercially available Playstation emulators. Is Sony mad about that? Sure they are. Does it matter? Heck no. And the list goes on! The PC you're typing on is as cheap as it is because of the revolution that Compaq started when it reverse engineered IBM PC's.
All of your arguments assume that we are required to ask the great and mighty movie studios if they will please allow us to make a nice little closed source player for our equipment. Yet, there is no such requirement.
I do agree that folks should not copy videos illegally. However, the ideas of "don't copy" and "play where I want to" are mutally exclusive. Just because "play where I want to" allows copying and copying is bad, does not imply that "play where I want to" is also bad.
Well for one, you own nothing aside from the right to view the movie in your home. It's encoded on the shiny little disk you purchased, but so far as your rights go, it's the same as goes for commercial software.
While i don't understand why the movie industry insists on this, I do understand that it's their right to determine proper usage, because they paid for it's creation and hence, it's their property.
What point are you trying to make here? If I have the right to view the movie in my own home then I have the right to play it on whatever equipment I want. If "they" don't provide me with a player that I want then I am free to make my own. To use your software analogy, I am perfectly withnin my rights to buy a piece of x86 software and run it on my PPC under a publically available emulator. Whether the software producer thinks this is "proper usage", as you put it, is of no importance. In the US at least, what you do with things you in your own home is your own business. However, if you take items outside the home (give/sell copies to friends) then you're in trouble. (Warning: I am not a lawyer)
P.S. I don't believe people should be copying disks illegally but I find the idea that I should be unable to play a disk on whatever platform I choose to be absurd.
NetBSD can dump a core for the kernel. In fact, so can many other OS's.
The trick is writing a nice little routine that is solid enough and self-contained enough to dump the memory to disk when the kernel dies.
Of course this doesn't alway work. The exception handler code might be messed up or the disk controller might be in some bad state, but for the most part, kernel exceptions aren't so fatal that they wedge the machine.
What prevents Eve from completely spoofing as Bob?
In other words, suppose Alice thinks she's sending to Bob but, in fact, Eve intercepts Alice's transmission and prentends to be Bob. Alice then goes through the whole protocol, thinking she's set up a connection with Bob. To keep Bob fooled, Eve sets up a bogus session with Bob to make him think he's talking with Alice. Eve then decrypts Alice's messages, reads them, then re-encrypts them and sends them on to Bob.
This problem is solved by digital signatures with todays systems but it seems to me that there is no such thing for Quantum encryption yet.
This idea is nice but old. After reading most of the PCLSR paper at the URL you mentioned its clear to me that most of the problems addressed by PCLSR are addressed today by multithreaded kernels and fine grained locking.
I can see why PCLSR might have been necessary and feasible on a small PDP-6 operating system but it would be both a pain to implement and unecessary for today's OSes and machines.
Actually, KDE being slow has less to do with X and more to do with linking, loading, and C++ virtual function use.
Check out:
http://www.suse.de/~bastian/Export/linking.txt
Besides, moving XFree into the kernel would be of dubious value at best. Moving certain critical _parts_ of XFree into the kernel might be a win, like the graphics drivers. After all, why the heck should a user space application like XFree be doing PCI management?
For games, the answer is obvious: You can look left and right. Flight sims with 3 monitors, etc. More monitors = wider view. There are many uses for multiple monitors running high performance graphics applications.
In other words, one AGP card (the target is the motherboard, master is the card) has to be switched off during AGP transfers. There is a reason AGP is a Port, not a Bus.
If that's the case, then multiple AGP's could be hung off a crossbar. This increases latency, but given that going out to any kind of card incurs more latency than going to memory, most applications are already optimized so they only have to touch the card as infrequently as possible already.
Anwyay, we all know that most cards don't even use AGP like they were supposed to (i.e. use main memory as texture memory) otherwise they wouldn't have such large on-board memories for textures.
This one can't be a winner, because sending it through the preprocessor has almost unobfuscated it enough to make it readable. I've played a little tetris program somebody made that was practically immune to analysis other than to the compiler :-)
,*p=' ' ; ,*p=' ' ;
//*s=='"'& ;
//&j++; = B+2,S()&&(p=q+4,l=S()-1)); ) );
p =='('?p++,o=S(),p++,o:P[*p++];
Here's a ansified and more simplified version of the code that compiles. I think there was a bug in the preprocessing on the lines that are commented out in main. It still runs a simple program, though.
Due to slashdot's wacko html, tabs are missing and I can't put in the includes for stdio.h and stddef.h. (Yes, I'm sure there's a way to do it but I'm lazy)
Enjoy:
int *C,E[999],L[999],M[999],P[999],l,i,j;
char B[999],F[2];
char *m[12*999],*p,*q,*x,*y,*z,*s,*d,*f;
char *Q(char *s, char *o)
{
for(x=s; *x; x++)
{
for(y=x,z=o;*z&&*y==*z;y++)
{
z++;
}
if(z>o&&!*z)
{
return x;
}
}
return 0;
}
int main(void)
{
m[11*999]="E";
while(puts("OK"),gets(B))
{
switch(*B)
{
case 'R':
C=E;
l=1;
for(i=0;i" ))*p++= '#'
while(p=Q(s, "=" ))*p++= '!'
}
d=B;
while(*F=*s)
{
if(j&1||!Q(" \t",F))*d++=*s;
s++;
}
*d--=j=0;
if(B[1]!='=')
{
switch(*B)
{
case 'E':
l=-1;
break ;
case'R':
B[2]!='M'&&(l=*--C);
break;
case 'I':
B[1]=='N'?gets(p=B),P[*d]=S():(*(q=Q(B,"TH"))=0,p
break;
case 'P':
B[5]=='"'?*d=0,puts(B+6):(p=B+5,printf("%d\n",S()
break;
case 'G':
p=B+4,B[2]=='S'&&(*C++=l,p++),l=S()-1 ;
break;
case 'F':
{
*(q=Q(B,"TO"))=0;
p=B+5;
P[i=B[3]]=S();
p=q+2;
M[i]=S();
L[i]=l ;
}
break;
case 'N':++P[*d]':
return o > J();
default:
p--;
return o;
}
}
int K(void)
{
int o=V();
switch(*p++)
{
case '$':
return o = K();
default:
p--;
return o;
}
}
int V(void)
{
int o=W();
switch(*p++)
{
case '+':
return o + V();
case '-':
return o - V();
default:
p--;
return o;
}
}
int W(void)
{
int o=Y();
switch(*p++)
{
case '*':
return o * W();
case '/':
return o / W();
default:
p--;
return o;
}
}
int Y(void)
{
int o;
return *p=='-'?p++,-Y():*p>='0'&&*p='9'?strtol(p,&p,0):*
}
The cat is both dead and alive...but only instantaneously.
The interactions of the myriad of particles in the cat cause the wave function to collapse almost immediately.
Thus, by the time you open the box the cat has either been alive or dead for quite some time. In other words, you missed "witnessing" the superposition. In fact, the odds of witnessing a cat in superposition are close to the odds of watching all of the air in the room congregate in the wastepaper basket under your desk (which is a classical physics problem). It's possible but extremely improbable.
That's how I understand it, anyway. Corrections are welcome.
The movie industry isn't forcing you to buy or use windows. You can purchase a DVD player for your TV and bypass the whole computer thing.
So they aren't forcing us to buy Windows but they are forcing us to buy extra hardware (a TV DVD player)? This is basically saying the same thing.
Unless there is something that is patented in the DVD playback process then there is nothing that should stop anybody from making a player if they can figure out how to do it. Just because all the current players are closed-source and industry controlled has no bearing on the creation of a reverse engineered open-source player.
This is analogous to the commercially available Playstation emulators. Is Sony mad about that? Sure they are. Does it matter? Heck no. And the list goes on! The PC you're typing on is as cheap as it is because of the revolution that Compaq started when it reverse engineered IBM PC's.
All of your arguments assume that we are required to ask the great and mighty movie studios if they will please allow us to make a nice little closed source player for our equipment. Yet, there is no such requirement.
I do agree that folks should not copy videos illegally. However, the ideas of "don't copy" and "play where I want to" are mutally exclusive. Just because "play where I want to" allows copying and copying is bad, does not imply that "play where I want to" is also bad.
Well for one, you own nothing aside from the right to view the movie in your home. It's encoded on the shiny little disk you purchased, but so far as your rights go, it's the same as goes for commercial software.
While i don't understand why the movie industry insists on this, I do understand that it's their right to determine proper usage, because they paid for it's creation and hence, it's their property.
What point are you trying to make here? If I have the right to view the movie in my own home then I have the right to play it on whatever equipment I want. If "they" don't provide me with a player that I want then I am free to make my own. To use your software analogy, I am perfectly withnin my rights to buy a piece of x86 software and run it on my PPC under a publically available emulator. Whether the software producer thinks this is "proper usage", as you put it, is of no importance. In the US at least, what you do with things you in your own home is your own business. However, if you take items outside the home (give/sell copies to friends) then you're in trouble. (Warning: I am not a lawyer)
P.S. I don't believe people should be copying disks illegally but I find the idea that I should be unable to play a disk on whatever platform I choose to be absurd.
I think what saves MSNBC is that they used the magical quote punctuation.
I think "real" plagarism requires no quotes.
It's as though they had a reporter in an angry crowd with a tape recorder. When they go to write a story later they just say:
"This is terrible" said one person in the mob.
And they are covered because it was clearly not their own statement. This was the form most of the quotes took on MSNBC's site.
Still, if the reporter could have found out who produced the quote then s/he probably should have at least TRIED to attach a name to the quote.
NetBSD can dump a core for the kernel. In fact, so can many other OS's.
The trick is writing a nice little routine that is solid enough and self-contained enough to dump the memory to disk when the kernel dies.
Of course this doesn't alway work. The exception handler code might be messed up or the disk controller might be in some bad state, but for the most part, kernel exceptions aren't so fatal that they wedge the machine.
What prevents Eve from completely spoofing as Bob?
In other words, suppose Alice thinks she's sending to Bob but, in fact, Eve intercepts Alice's transmission and prentends to be Bob. Alice then goes through the whole protocol, thinking she's set up a connection with Bob. To keep Bob fooled, Eve sets up a bogus session with Bob to make him think he's talking with Alice. Eve then decrypts Alice's messages, reads them, then re-encrypts them and sends them on to Bob.
This problem is solved by digital signatures with todays systems but it seems to me that there is no such thing for Quantum encryption yet.