This morning I wandered into town to see if I could get a Treo 600. Unfortunately, Orange are being laggards.
The person in the Orange Shop told me that they were told that they were due soon but not yet and that I should check back in a week or so. This is, of course, contrary to the Handspring UK's website but in line with the current state of the Orange website which says "Coming soon to PM."
I must admit to not being totally up to date with all the modern processors, but from what I remember, surely this only applies to those processors which use register windows, lots of which have the registers in memory.
From what I understand, to be x86 compatible (as far as MMU OS operations are concerned) the processor has to act just like the old 386 with the OS doing all the context switch hard work in the interrupt code. Hence, the process is interrupted, the processor has to flush the instruction cache, jump to the interrupt routine which then copies out the process context to memory, loads the new process' context into the registers, sets the instruction pointer register to the right place and exits the interrupt routine and the processor starts reading and executing the instructions for the new process.
Re:Will it be secure?
on
AMD64 Preview
·
· Score: 3, Informative
Not exactly.
Within the MMU look-up tables the memory pages can be marked as being executable or not. Hence, if a program tries to jump to memory in a protected page (ie. not marked as executable) it will cause an exception.
The current x86 MMU doesn't have this ability, unlike some processors such as the Sun UltraSPARC (though not any versions previous to this).
Yeah, I used the term "multi-processing" 'cos my OS lecturer during my MSc would do his nut if I used the term "multitasking" so I learned to use that term instead.
I used to use the term "multitasking" myself to describe the operation of a pre-emptive process-switching operating system before then.. when I used to program on the Sinclair QL in 68000 assembler.
I agree that it's FAR less of a problem than it was in the past. However, seeing as more and more programs are being written with a large number of threads it can still add up to a significant performance factor, especially if the contexts are bumped from level1 to level2 cache or (God forbid) main memory as you then have lots of memory latency to worry about.
There is still the awful problem of pipeline flushing as well, though this is unlikely to change between 32 bit mode and 64 bit mode. I can't remember how deep the pipelines are on current ALU's but dumping and restarting an instruction pipeline can still steal excrutiatingly large numbers of cycles if someone gets it wrong.
Yes, I did read the article. However, the benchmarks were done using the Opteron in its full 32 bit compatability mode. ie. it pretends to be a 32 bit x86 family chip and hence the overheads due to the extra register loads/saves to/from main memory don't apply.
You also state that there's no "context-switch" delay. I'm fraid you're mistaken as all processors have to copy out their register contents to memory and load those of the new process every time the operating system pre-empts a process and loads a new one in its place, otherwise the userland processes would see the CPU changing below them without them doing anything, which wouldn't work. It's the way multi-processing works. During the time in which the data is being written to/read from memory (be it cache or main memory) the processor is effectively idling waiting for the process to complete.
If you don't believe me, have a read of some 1st year undergraduate computer system design books. I'll try to look up some references if you would like?
Hmm.. you say that having bigger and more registers is going to increase the speed of programs..
Well, this may be true if the only code running is the game and doesn't transfer double the data from the memory to process (64bits rather than 32).
However, what happens when the operating system does a context switch or some other exception occurs? The latency from saving the processor context is going to go way up as you have to save far more data to memory and then load the same large amount of data in for the new context.
If you double the size of the registers and double the number of registers (and possibly add to the size of the CPU's other program registers) you suddenly quadruple the amount of data which has to be changed over. On a system with many threads and processes running this can add up to a significant deficit.
Now, if your programmers decide that they want to work on 64bit wide data instead of the 32bit they used to on the old system, you suddenly find that your processor is having to move double the amount of data around there system.. You have to hope that any increases in memory bandwidth the engineers included are enough to cater for this.
I think the main thing I'm trying to say is that 64bit computing isn't necessarily faster than 32 bit computing. Indeed, because some of the overheads can be double or quaduple, it can be a performance hit.
Sorry for possibly raining on your parade, but that's how the cookie crumbles.
And by take the computer out of the box I mean a generic, untailored copy of the OS on the hard disk and standard application set (as distributed with the OS). ie. as a manufacturer would supply the unit.
Any local applications would be held centrally on the server which are accessed via a central network disk. This means that the sysadmins only have to upgrade an application once and all the desktops are automatically updated because they all use the same networked copy.
This would require that the base OS and the applications are logically separated on the filesystem so that a networked copy could be mounted over the top replacing the ones on the hard disk. (And by applications I also mean the desktop interface!)
By plug and play I mean, take new computer which is totally unconfigured out of the box, plug it into the wall socket and the network, switch it on and hey-presto it's downloaded the config from the central server, configured itself with the information it got and is now awaiting the secretary/manager/phone operator/office clerk to log in and work, all within a couple of minutes.
ie. the computer + OS is an appliance, just like a desklamp. You wouldn't expect to spend a few hours getting a desklamp configured before use, would you?
But who's desktop do you want Linux on?
on
Linux on the Desktop
·
· Score: 3, Interesting
Having seen a great deal of hype and discussion about how Linux is going to push Windows off the desktop I see a problem with the whole subject...
No-one's actually defined who's desktop they want to aim at.
Now, if it's the corporate desktop then distributions should concentrate on a small number of bullet-proof applications included on the CD's. They should be set up so that they're designed to be "plug-and-play" when it comes to setting them up for a specific task and they should only allow the admin to change the look and feel etc. After all, it's an interchangeable office tool like a desklamp. Or it should be.
If it's the desktop of Aunty May then they should target with a few, easily used and bullet proof set of applications and a desktop which is very simple to use and only does a few things but does them extremely well.
If the desktop is for the computer hobbyist then they need a core set of programs which are bullet proof and a desktop which is customisable etc. In addition to this a lot of optional toys should be available.
Now, which of these "desktops" do you want to conquer?
In my opinion, for the last two, Apple have got the right mix with MacOS X, so Linux distributions could do worse than following Apple's ideas on combing novice usability with UNIX nutter complexity.
No operating system I've seen does the "desklamp" type interchangable desktop system all that well other than maybe Sun's SunRays and other thin clients, but they rely upon server CPU to run the applications.
Of course, this test of the code is purely a test of coding errors rather than errors in the code logic.
The most worrying errors in programs are generally not coding errors as they are either terminal (ie. crash) or they are benign (the error may cause memory corruption in a place where it does no harm). Of course, there are exceptions such as buffer overflows, but I'd class those, in general, into the logic error category.
Logic or algorythmic errors are far more dangerous as they can be well hidden and are more likely to make the code do things unintended. The code itself may be perfect but if the algorithm is faulty then there's a major problem.
Well, you may laugh, but architects are thinking of building lifts which can go sideways as well as up and down. Soon they (the lifts) will be sculking in the basement with Genuine People Personalities(tm).
Douglas Adams was a visionary and a futurist, obviously.
I'm sure people would like to know that the use of GPS for geodesy has been going on for many years.
The way that it is done is not to use the same sort of measurement used by handheld GPS receivers but to use the phase of the signal coming from the satellite.
If you monitor the gps network for a long enough period using these techniques you can get down to the millimetre level of accuracy horizontally. The longer you monitor the better the accuracy you can get.
A group working here, at Oxford University, has been doing such work in Greece and the South Island of New Zealand and is now part of a national centre of excellence, called COMET.
This page should give you a better idea about what they're doing.
It's a well known, well used and probably patented business practice to re-brand unfashionable products. Hence, to create a legacy-free PC you merely have to re-brand the "legacy" interfaces and parts..
(1) BIOS
What does the BIOS do these days? It bootstraps the OS, initialises the hardware and runs a POST. It's written in a programmable FLASH memory chip. In other words, it's a Programmable Read Only Memory which bootstraps... a Boot PROM!
So, the new, legacy free PC now has a BOOT PROM instead of a BIOS.
(2) Serial Port.
This one's easy, it's a Low Bandwidth Serial Interconnect device.. or LBSI port.
(3) Floppy Disk
Another easy one.. Digital Flexible Disk.. DFD-RAM
(4) Parallel Port
Universal Parallel Bus.. UPB.
As you can see.. re-branding these old interfaces gives you a new, legacy-free PC!!!
This is only really half joking, really. There are still many uses for these old interfaces and components. Half the "legacy" part is really the implementation rather than the interface itself.
For example, the BIOS doesn't HAVE to be written the way it is currently, it's just that it is traditionally done so. The floppy disk doesn't HAVE to be limited to 1.44MB as the LS-120 drives showed (the problem this had was that it didn't look like a floppy disk at the hardware level for legacy software).
OK, picture this.. an alternative reality (20 seconds in the future) where law and order have broken down and the only power is wielded by huge media corporations. The ratings are measured in real time second by second and programmes are designed and implemented to get the most audience using the basest TV formats.
Now, enter Edison Carter, the on the spot reporter for Network 23 who carries his own camera and is controlled by his director in Network 23's offices.
Network 23 are using high intensity, high speed "blipverts" to force people to watch the commercials giving them no time to change to other channels.
Unfortunately for Network 23, they also cause people who overdose on the blipverts to have their head explode.. it's doubly unfortunate that Edison Carter is sniffing out the story and Edison is also Network 23's highest ratings puller.. so with the help of their pet geek, they devise the idea of a virtual Edison Carter, getting rid of the original (at the body bank).
Anyway, to cut a long story short, Max Headroom is created by a not so well transfered personality from Edison Carter after he has been knocked out when trying to escape from Network 23's underground car park, the last image he had seen was the barrier with the warning sign "Max Headroom ? feet."
There is far more to the original 1985(?) Channel 4 production which involves the escape of both Edison Carter and Max Headroom from Network 23.
The american market got a rejigged version which was no-where as good. The spin-off from which was The Max Headroom Show.
I do hope that they add them to the CNX channel line up alongside Cowboy Be-Bop, Outlaw Star etc. 'cos they've gone around the whole of those series at least thrice so far!
Having read both the changelog and searched the kernel archives it's interesting to note that way back in 2.4.20-pre3 the Athlon MP/XP prefetch bug work around was pulled out of the kernel.
Subsiquently, Alan Cox in the kernel mailing list archives responds to someone asking about this and says that he thinks some of the VM changes have fixed at least the AGP problems but not the mmap ones, to quote:-
-ac has it removed. I didn't know Marcelo had it removed. Andi Kleen has
a patch for doing most of the right things without trashing performance.
That may be what Marcelo merged. It fixed AGP but not O_SYNC mmap I
believe
this was posted on the 17th August and there's no further mention of the problem as far as I can see.
If this hasn't been fixed in the full 2.4.20 release then there is no way I can install this kernel on our three dual processor Athlon MP boxes we use for mathematical simulations as the machines need to be able to run for many weeks on the problems and hence have to be rock-solid stable.
Does anyone know if the new VM fixes fully fix the Athlon MP/XP problems?
As far back as 1972, the UK's Advanced Passenger Train (Experimental) used two power cars running on gas turbine engines. see this for a few more details.
I think these Californians are over stating their claim, or at least the BBC story is.
People in our department have been using SAR interferometry for a number of years to study earthquake motion, and <a href="http://www.earth.ox.ac.uk/~timw/dinar/dinar. html">here's</a> a page detailing the work on the 1995 Dinar (Greece) earthquake, and another on the <a href="http://www.earth.ox.ac.uk/~geodesy/izmit.htm l">1999 Izmit (Turkey)</a> earthquake.
Sorry, I just felt I needed to set the record straight.
This morning I wandered into town to see if I could get a Treo 600. Unfortunately, Orange are being laggards.
The person in the Orange Shop told me that they were told that they were due soon but not yet and that I should check back in a week or so. This is, of course, contrary to the Handspring UK's website but in line with the current state of the Orange website which says "Coming soon to PM."
Oh well.
Telnet? Telnet?! How post modern of you!
In my day it was a trusty X25 PAD and Newbury glass teletype terminal...
PAD> call 0000496000001
To connect to the DEC 10 at Essex University, login as:-
[2653,2653]
and then type MUD or MIST.
Eeee-by-gum, they were t'days.
Kids today wouldn't know a real network if it came up and bit 'em. They're all spoilt! Spoilt, I say!
I must admit to not being totally up to date with all the modern processors, but from what I remember, surely this only applies to those processors which use register windows, lots of which have the registers in memory.
From what I understand, to be x86 compatible (as far as MMU OS operations are concerned) the processor has to act just like the old 386 with the OS doing all the context switch hard work in the interrupt code. Hence, the process is interrupted, the processor has to flush the instruction cache, jump to the interrupt routine which then copies out the process context to memory, loads the new process' context into the registers, sets the instruction pointer register to the right place and exits the interrupt routine and the processor starts reading and executing the instructions for the new process.
Not exactly.
Within the MMU look-up tables the memory pages can be marked as being executable or not. Hence, if a program tries to jump to memory in a protected page (ie. not marked as executable) it will cause an exception.
The current x86 MMU doesn't have this ability, unlike some processors such as the Sun UltraSPARC (though not any versions previous to this).
Yeah, I used the term "multi-processing" 'cos my OS lecturer during my MSc would do his nut if I used the term "multitasking" so I learned to use that term instead.
I used to use the term "multitasking" myself to describe the operation of a pre-emptive process-switching operating system before then.. when I used to program on the Sinclair QL in 68000 assembler.
I agree that it's FAR less of a problem than it was in the past. However, seeing as more and more programs are being written with a large number of threads it can still add up to a significant performance factor, especially if the contexts are bumped from level1 to level2 cache or (God forbid) main memory as you then have lots of memory latency to worry about.
There is still the awful problem of pipeline flushing as well, though this is unlikely to change between 32 bit mode and 64 bit mode. I can't remember how deep the pipelines are on current ALU's but dumping and restarting an instruction pipeline can still steal excrutiatingly large numbers of cycles if someone gets it wrong.
Yes, I did read the article. However, the benchmarks were done using the Opteron in its full 32 bit compatability mode. ie. it pretends to be a 32 bit x86 family chip and hence the overheads due to the extra register loads/saves to/from main memory don't apply.
You also state that there's no "context-switch" delay. I'm fraid you're mistaken as all processors have to copy out their register contents to memory and load those of the new process every time the operating system pre-empts a process and loads a new one in its place, otherwise the userland processes would see the CPU changing below them without them doing anything, which wouldn't work. It's the way multi-processing works. During the time in which the data is being written to/read from memory (be it cache or main memory) the processor is effectively idling waiting for the process to complete.
If you don't believe me, have a read of some 1st year undergraduate computer system design books. I'll try to look up some references if you would like?
Hmm.. you say that having bigger and more registers is going to increase the speed of programs..
Well, this may be true if the only code running is the game and doesn't transfer double the data from the memory to process (64bits rather than 32).
However, what happens when the operating system does a context switch or some other exception occurs? The latency from saving the processor context is going to go way up as you have to save far more data to memory and then load the same large amount of data in for the new context.
If you double the size of the registers and double the number of registers (and possibly add to the size of the CPU's other program registers) you suddenly quadruple the amount of data which has to be changed over. On a system with many threads and processes running this can add up to a significant deficit.
Now, if your programmers decide that they want to work on 64bit wide data instead of the 32bit they used to on the old system, you suddenly find that your processor is having to move double the amount of data around there system.. You have to hope that any increases in memory bandwidth the engineers included are enough to cater for this.
I think the main thing I'm trying to say is that 64bit computing isn't necessarily faster than 32 bit computing. Indeed, because some of the overheads can be double or quaduple, it can be a performance hit.
Sorry for possibly raining on your parade, but that's how the cookie crumbles.
And by take the computer out of the box I mean a generic, untailored copy of the OS on the hard disk and standard application set (as distributed with the OS). ie. as a manufacturer would supply the unit.
Any local applications would be held centrally on the server which are accessed via a central network disk. This means that the sysadmins only have to upgrade an application once and all the desktops are automatically updated because they all use the same networked copy.
This would require that the base OS and the applications are logically separated on the filesystem so that a networked copy could be mounted over the top replacing the ones on the hard disk. (And by applications I also mean the desktop interface!)
By plug and play I mean, take new computer which is totally unconfigured out of the box, plug it into the wall socket and the network, switch it on and hey-presto it's downloaded the config from the central server, configured itself with the information it got and is now awaiting the secretary/manager/phone operator/office clerk to log in and work, all within a couple of minutes.
ie. the computer + OS is an appliance, just like a desklamp. You wouldn't expect to spend a few hours getting a desklamp configured before use, would you?
Having seen a great deal of hype and discussion about how Linux is going to push Windows off the desktop I see a problem with the whole subject...
No-one's actually defined who's desktop they want to aim at.
Now, if it's the corporate desktop then distributions should concentrate on a small number of bullet-proof applications included on the CD's. They should be set up so that they're designed to be "plug-and-play" when it comes to setting them up for a specific task and they should only allow the admin to change the look and feel etc. After all, it's an interchangeable office tool like a desklamp. Or it should be.
If it's the desktop of Aunty May then they should target with a few, easily used and bullet proof set of applications and a desktop which is very simple to use and only does a few things but does them extremely well.
If the desktop is for the computer hobbyist then they need a core set of programs which are bullet proof and a desktop which is customisable etc. In addition to this a lot of optional toys should be available.
Now, which of these "desktops" do you want to conquer?
In my opinion, for the last two, Apple have got the right mix with MacOS X, so Linux distributions could do worse than following Apple's ideas on combing novice usability with UNIX nutter complexity.
No operating system I've seen does the "desklamp" type interchangable desktop system all that well other than maybe Sun's SunRays and other thin clients, but they rely upon server CPU to run the applications.
Of course, this test of the code is purely a test of coding errors rather than errors in the code logic.
The most worrying errors in programs are generally not coding errors as they are either terminal (ie. crash) or they are benign (the error may cause memory corruption in a place where it does no harm). Of course, there are exceptions such as buffer overflows, but I'd class those, in general, into the logic error category.
Logic or algorythmic errors are far more dangerous as they can be well hidden and are more likely to make the code do things unintended. The code itself may be perfect but if the algorithm is faulty then there's a major problem.
Well, you may laugh, but architects are thinking of building lifts which can go sideways as well as up and down. Soon they (the lifts) will be sculking in the basement with Genuine People Personalities(tm).
Douglas Adams was a visionary and a futurist, obviously.
Ah, so it would have ordered the gallon of milk to be couriered to your destination then, as that's obviously what you wanted. Isn't it?
I'm sure people would like to know that the use of GPS for geodesy has been going on for many years.
The way that it is done is not to use the same sort of measurement used by handheld GPS receivers but to use the phase of the signal coming from the satellite.
If you monitor the gps network for a long enough period using these techniques you can get down to the millimetre level of accuracy horizontally. The longer you monitor the better the accuracy you can get.
A group working here, at Oxford University, has been doing such work in Greece and the South Island of New Zealand and is now part of a national centre of excellence, called COMET.
This page should give you a better idea about what they're doing.
It's a well known, well used and probably patented business practice to re-brand unfashionable products. Hence, to create a legacy-free PC you merely have to re-brand the "legacy" interfaces and parts..
(1) BIOS
What does the BIOS do these days? It bootstraps the OS, initialises the hardware and runs a POST. It's written in a programmable FLASH memory chip. In other words, it's a Programmable Read Only Memory which bootstraps... a Boot PROM!
So, the new, legacy free PC now has a BOOT PROM instead of a BIOS.
(2) Serial Port.
This one's easy, it's a Low Bandwidth Serial Interconnect device.. or LBSI port.
(3) Floppy Disk
Another easy one.. Digital Flexible Disk.. DFD-RAM
(4) Parallel Port
Universal Parallel Bus.. UPB.
As you can see.. re-branding these old interfaces gives you a new, legacy-free PC!!!
This is only really half joking, really. There are still many uses for these old interfaces and components. Half the "legacy" part is really the implementation rather than the interface itself.
For example, the BIOS doesn't HAVE to be written the way it is currently, it's just that it is traditionally done so. The floppy disk doesn't HAVE to be limited to 1.44MB as the LS-120 drives showed (the problem this had was that it didn't look like a floppy disk at the hardware level for legacy software).
OK, picture this.. an alternative reality (20 seconds in the future) where law and order have broken down and the only power is wielded by huge media corporations. The ratings are measured in real time second by second and programmes are designed and implemented to get the most audience using the basest TV formats.
Now, enter Edison Carter, the on the spot reporter for Network 23 who carries his own camera and is controlled by his director in Network 23's offices.
Network 23 are using high intensity, high speed "blipverts" to force people to watch the commercials giving them no time to change to other channels.
Unfortunately for Network 23, they also cause people who overdose on the blipverts to have their head explode.. it's doubly unfortunate that Edison Carter is sniffing out the story and Edison is also Network 23's highest ratings puller.. so with the help of their pet geek, they devise the idea of a virtual Edison Carter, getting rid of the original (at the body bank).
Anyway, to cut a long story short, Max Headroom is created by a not so well transfered personality from Edison Carter after he has been knocked out when trying to escape from Network 23's underground car park, the last image he had seen was the barrier with the warning sign "Max Headroom ? feet."
There is far more to the original 1985(?) Channel 4 production which involves the escape of both Edison Carter and Max Headroom from Network 23.
The american market got a rejigged version which was no-where as good. The spin-off from which was The Max Headroom Show.
It was tinned spagetti.. Probably Heinz.
Hmm.. the wonders of spagetti on toast... or alphabeti spagetti...
Welcome to the wonderful world of 1970's/80's british tinned cuisine.
To paraphrase The Matrix..
We only look at the raw saurce 'cos the renderers are owned by the enemy.
I do hope that they add them to the CNX channel line up alongside Cowboy Be-Bop, Outlaw Star etc. 'cos they've gone around the whole of those series at least thrice so far!
Well, firstly, the 2.4.x kernels are supposed to be stable (Hmm...)
Secondly, there are some issues with speed *IF* the Athlon prefetch code has been fixed.
Thirdly, from whay I can remember, there are a few possible security issues with 2.4.19.
Subsiquently, Alan Cox in the kernel mailing list archives responds to someone asking about this and says that he thinks some of the VM changes have fixed at least the AGP problems but not the mmap ones, to quote:-
-ac has it removed. I didn't know Marcelo had it removed. Andi Kleen has a patch for doing most of the right things without trashing performance. That may be what Marcelo merged. It fixed AGP but not O_SYNC mmap I believe
this was posted on the 17th August and there's no further mention of the problem as far as I can see.
If this hasn't been fixed in the full 2.4.20 release then there is no way I can install this kernel on our three dual processor Athlon MP boxes we use for mathematical simulations as the machines need to be able to run for many weeks on the problems and hence have to be rock-solid stable.
Does anyone know if the new VM fixes fully fix the Athlon MP/XP problems?
As far back as 1972, the UK's Advanced Passenger Train (Experimental) used two power cars running on gas turbine engines. see this for a few more details.
I think these Californians are over stating their claim, or at least the BBC story is.
. html">here's</a> a page detailing the work on the 1995 Dinar (Greece) earthquake, and another on the <a href="http://www.earth.ox.ac.uk/~geodesy/izmit.htm l">1999 Izmit (Turkey)</a> earthquake.
People in our department have been using SAR interferometry for a number of years to study earthquake motion, and <a href="http://www.earth.ox.ac.uk/~timw/dinar/dinar
Sorry, I just felt I needed to set the record straight.
I'm sure Telsa won't be too pleased that you mis-typed her name! :-)