8 bit bytes and 2's complement are de-facto standards so I am pretty safe in assuming them.
On the other hand the size of "char" "short" "int" "short long" "long" "long long" and so on does vary considerablly by platform. By defining the fixed size integer types as part of the standard libraries the application programmer is freed from having to maintain (update whenever porting to a new platform) thier own set.
Byte order also varies by platform and again there are standard routines (as part of the berkely sockets API) for converting between host byte order and big endian byte order (which is the internet standard) so the application programmer doesn't have to maintain thier own set.
You can call people who read and write integers or stuctures containing integers direct from binary files or binary network protocols dumbasses all you like but the fact is that the only alternatives for reading and writing binary files are both slow and cumbersome.
Yes you have to be carefull about endian issues and maybe if you want to support some very obscure platforms (which most people don't care about supporting sorry) and used signed numbers in your file signed number representation but that is why we have functions like htons. htonl ntohl and ntohs).
C standard 99 keeps time_t explicitely as a 32-bit integer hmm the closest thing I can find to the C99 standard online without paying (a draft version of a version with some minor ammendments added) says
"The range and precision of times representable in clock_t and time_t are implementation-defined."
Checking things quickly on amd64 linux time_t is 64 bit, on i386 linux it is 32 bit.
The problem is changing the size of a standard type like time_t breaks the platforms C abi, the glibc maintainers understanablly don't want to go through a C abi change for an issue that won't affect anything for three decades to come. Also some file formats almost certainly have a fixed 32 bit space for a timestamp.
Isn't 2048 also supposed to be problematic? Binary 2047 (11111111111) into binary 2048 (100000000000) will add an extra digit. probablly problematic for some obscure systems that store the complete year number in a 11 bit number (or more likely a 12 bit signed number).
The fact is there are all sorts of rare date stamp systems that run into issues at a particular date. Systems will either be fixed or decomissioned in the runup to whatever thier particular cutoff date is hopefully without too much trouble and for most formats it will only be a few systems failing at a time.
However some issues are so common that they will cause problems to hit with a lot of systems at the same time. Some of the key ones are:
* year in two decimal digits, Y2K should have taught us our lesson on this one but now it's passed I bet a lot of new system designers are thinking thier systems won't be arround in 2100;). * leap year rules, the gregorian rule is a year is a leap year if (((y%4)==0)&& !((y%100)==0))) || ((y%400)=0) but many use the rule (Y%4)==0 which is correct for 397 out of 400 years. Again this problem hits in 2100. * dos datestamps. Theese will overflow in (finding any information on the format at all seems to be a PITA) 2108 (though some implementations that use signed 16 bit variables may have trouble with ones beyond 2044). Dos dates are used in the common fat filesystem and the common zip archive format. * unix date/time stamps stored in 32 bits. Theese will overflow in 2038 if signed and 2106 if unsigned. (yes 64 bit ones will eventually oveflow too but I doubt humans will be arround in a recognisable form when it does.
The core was permanently disabled so the user couldn't tell if it was defective or not. I suspect some had a defective core disabled and some had a perfectly good core disabled.
Just as with clock speed it makes sense to sell some proportion of parts in a deliberately crippled fassion because it lets you keep the supply stable across manufacturing quality variations.
As a subscriber you are probably not aware that/. has started inserting banner ads after some posts. I'm not a subscriber and the only adverts I have seen on/. is one per page near the top (for the main story pages usually it's bottom or middle of story depending on story length, for comment only pages it tends to be just below the top bar but the location does vary a bit depending on the particular advert) and they seem to mostly avoid adverts that make noise.
reportedly far from perfect, and might disappear from the market soon. IIRC you will still be able to install it under downgrade rights from OEM vista buisness/ultimate and from volume license versions of vista.
it's the *same* DVD for all versions. It isn't actually there are at least six different vista DVDs for each language afaict. There is retail (which decides which edition to give you by the key) VLK buisness and VLK enterprise and each of those comes in a seperate x86 and x64 version. The x86 versions also come in the form of CD sets.
We can test this easily, in the era of the P3 a lot of office systems were DUAL ready, so that when your needs increased you could ad another P3 and have lots more power. How many of you did that with a P3 that had been in the office for more then a year? I personally have never had an encounter with such a machine as my experiances with buisnessy PCs started more recently but given a roomfull of those systems that weren't keeping up I would probablly gut half of them for parts and use those parts to upgrade the other half.
That said, though, ok, I'll concede the point about simplicity. I can see how a multi-core design would be simpler. and simplicity is good, a more complex decoder is likely to take more gates and flip-flops but more importantly tight coupling makes it much much harder to "place and route" the chip for high speed. You want loose coupling so it is easier for the placer to arrange the flip-flops and gates in a way that keeps flip-flops that feed each other close together and so that less rescourses are taken up on interconnect stuff.
I don't think it is that unlikely that AMD will fail (I will define failure in this context as no longer able to viablly produce chips that offer comparable price/performance to intel) look at how quickly cyrix fell from grace.
and the combination of licensing issues and intels economies of scale would make it very very difficult for a competitor to set up effectively.
you are assuming a competitor can produce them for the same cost. This is unlikely to be true due to economies of scale, patent licensing issues and trade secrets.
intel did this with the core duo chip selling chips with one core disabled as lower priced core solos.
It is really just a logical extention of the test them at different clock speeds and grade accordingly strategy that PC processor vendors have used for well over a decade.
stuff has a nasty habbit of sticking arround longer than you expect. You plan a system to last say 10 years at the companies current growth rate. After say 7 years your company reaches it's growth limit and becomes an income company or worse there is a rescession in your industry and your company teeters on the edge of bankrupcy. The system keeps running with few changes until it is say 20 years old at which point the hardware is becoming difficult to obtain but noone really understandards how the system works so rather than trying to port it they put it on an emulator. Before you know it the code has been running for decades.
File formats also have a nasty habbit of sticking arround longer than the software that works with them and file formats very often contain embedded binary date formats that were chosen simply because they were the default types for the platform in question.
One option I thought would make it a lot more attractive would be built-in ripping of DVDs into iTunes. Sadly apple can't do that, while DVD copy protection is thouroughly cracked it is still illegal to distribute tools for ripping DVDs in many countries. Small timers can get away with it but a company the size of apple would just get slapped with a lawsuit immediately.
but something dumbed down like an Asus Eee doesn't quite cut it, although for 1/5 the price it's awfully tempting What can't the eeepc do that you require?
I can see the attraction of a true small form factor machine (e.g. libretto, eeepc, VAIO TZ ) but other than showing off I just don't see the use of ultra thin but large area machines. They seem like they would be very fragile and no less awkward to pack than slightly thicker machines like the regular macbook.
but who are these "subnotebooks" targeted at, anyway? Afaict theese very thin laptops with largish screens are mosty targetted at those with more money than sense who are buying a machine based on looks rather than practicality. There are a surprising number of such people.
If you want a machine that is small in a pracitcal sense you need to give up screen size. If your application demands PC architecture that means machines like the libretto, the eeepc and the smaller vaios. If it doesn't then there are a variety of products that come from the large PDA direction.
There are two main problems with USB hubs in this context:
1: it's yet another box to carry arround (on top of your CD/DVD drive, network adaptor, mouse etc) 2: if the hub is self powered it needs to get it's power from somewhere (like batteries which will make it rather bulky). If it is bus powered you will have trouble with some devices because of lack of power availibility).
it hasn't been an issue (for most people) on the existing Macbook models unlike the iPods and iPhones the macbooks DO have easilly removable batteries.
Maybe I'm missing the usefulness of some of those but it doesn't seem like a big deal. lets see
Because it is lighter than air, airships and balloons are inflated with helium for lift. In airships, helium is preferred over hydrogen because it is not flammable and has 92.64% of the buoyancy (or lifting power) of the alternative hydrogen (see calculation.) not that important because most really important uses of balloons (weather monitoring) are unmanned and so can use hydrogen.
For its low solubility in water, the major part of human blood, air mixtures of helium with oxygen and nitrogen (Trimix), with oxygen only (Heliox), with common air (heliair), and with hydrogen and oxygen (hydreliox), are used in deep-sea breathing systems to reduce the high-pressure risk of nitrogen narcosis, decompression sickness, and oxygen toxicity. While a lot of diving is done just for pleasure diving is also done for industrial reasons such as maintinance of oil/gas rigs, some of that diving is pretty deep. Helium is by far the best mixer gas (and you need some mixer gas to get the overall pressure of the breathing gas right withotu making the partial pressure of oxygen/nitrogen dangerously high) for high pressure diving because it has a low molecular mass, is safe to handle and no (or at least very little) affect on the body.
* At extremely low temperatures, liquid helium is used to cool certain metals to produce superconductivity, such as in superconducting magnets used in magnetic resonance imaging. Helium at low temperatures is also used in cryogenics. magnetic resonance imaging is a pretty important part of modern medicines.
* For its inertness and high thermal conductivity, neutron transparency, and because it does not form radioactive isotopes under reactor conditions, helium is used as a coolant in some nuclear reactors, such as pebble-bed reactors. nuclear reactors are probablly going to be the main power source of the next half century or so once we realise that burning fossil fuels at the current rate is not reasonable, that renewables are an extra at best and that fusion is still a long way off.
* Helium is used as a shielding gas in arc welding processes on materials that are contaminated easily by air. It is especially useful in overhead welding, because it is lighter than air and thus floats, whereas other shielding gases sink. welding is pretty important in a lot of industries
* Because it is inert, helium is used as a protective gas in growing silicon and germanium crystals, in titanium and zirconium production, in gas chromatography, and as an atmosphere for protecting historical documents. This property also makes it useful in supersonic wind tunnels. silicon based computers have become a pretty vital part of the world economy
in rocketry, helium is used as an ullage medium to displace fuel and oxidizers in storage tanks and to condense hydrogen and oxygen to make rocket fuel. It is also used to purge fuel and oxidizer from ground support equipment prior to launch and to pre-cool liquid hydrogen in space vehicles. For example, the Saturn V booster used in the Apollo program needed about 13 million cubic feet (370,000 m) of helium to launch while manned space exploration doesn't really achive all that much sattalites have certainly become pretty important in the modern world.
Because of its extremely low index of refraction, the use of helium reduces the distorting effects of temperature variations in the space between lenses in some telescopes. probablly not that important
The age of rocks and minerals that contain uranium and thorium, radioactive elements that emit helium nuclei called alpha particles, can be discovered by measuring the level of helium with a process known as helium dating. not really a use of helium in the sense we are talking about here.
The high thermal conductivity and sound velocity of helium is also desirable in thermoacoustic
The way I look at it is
8 bit bytes and 2's complement are de-facto standards so I am pretty safe in assuming them.
On the other hand the size of "char" "short" "int" "short long" "long" "long long" and so on does vary considerablly by platform. By defining the fixed size integer types as part of the standard libraries the application programmer is freed from having to maintain (update whenever porting to a new platform) thier own set.
Byte order also varies by platform and again there are standard routines (as part of the berkely sockets API) for converting between host byte order and big endian byte order (which is the internet standard) so the application programmer doesn't have to maintain thier own set.
You can call people who read and write integers or stuctures containing integers direct from binary files or binary network protocols dumbasses all you like but the fact is that the only alternatives for reading and writing binary files are both slow and cumbersome.
Yes you have to be carefull about endian issues and maybe if you want to support some very obscure platforms (which most people don't care about supporting sorry) and used signed numbers in your file signed number representation but that is why we have functions like htons. htonl ntohl and ntohs).
C standard 99 keeps time_t explicitely as a 32-bit integer
hmm the closest thing I can find to the C99 standard online without paying (a draft version of a version with some minor ammendments added) says
"The range and precision of times representable in clock_t and time_t are
implementation-defined."
Checking things quickly on amd64 linux time_t is 64 bit, on i386 linux it is 32 bit.
The problem is changing the size of a standard type like time_t breaks the platforms C abi, the glibc maintainers understanablly don't want to go through a C abi change for an issue that won't affect anything for three decades to come. Also some file formats almost certainly have a fixed 32 bit space for a timestamp.
Isn't 2048 also supposed to be problematic? Binary 2047 (11111111111) into binary 2048 (100000000000) will add an extra digit.
;).
probablly problematic for some obscure systems that store the complete year number in a 11 bit number (or more likely a 12 bit signed number).
The fact is there are all sorts of rare date stamp systems that run into issues at a particular date. Systems will either be fixed or decomissioned in the runup to whatever thier particular cutoff date is hopefully without too much trouble and for most formats it will only be a few systems failing at a time.
However some issues are so common that they will cause problems to hit with a lot of systems at the same time. Some of the key ones are:
* year in two decimal digits, Y2K should have taught us our lesson on this one but now it's passed I bet a lot of new system designers are thinking thier systems won't be arround in 2100
* leap year rules, the gregorian rule is a year is a leap year if (((y%4)==0)&& !((y%100)==0))) || ((y%400)=0) but many use the rule (Y%4)==0 which is correct for 397 out of 400 years. Again this problem hits in 2100.
* dos datestamps. Theese will overflow in (finding any information on the format at all seems to be a PITA) 2108 (though some implementations that use signed 16 bit variables may have trouble with ones beyond 2044). Dos dates are used in the common fat filesystem and the common zip archive format.
* unix date/time stamps stored in 32 bits. Theese will overflow in 2038 if signed and 2106 if unsigned. (yes 64 bit ones will eventually oveflow too but I doubt humans will be arround in a recognisable form when it does.
The core was permanently disabled so the user couldn't tell if it was defective or not. I suspect some had a defective core disabled and some had a perfectly good core disabled.
Just as with clock speed it makes sense to sell some proportion of parts in a deliberately crippled fassion because it lets you keep the supply stable across manufacturing quality variations.
As a subscriber you are probably not aware that /. has started inserting banner ads after some posts. /. is one per page near the top (for the main story pages usually it's bottom or middle of story depending on story length, for comment only pages it tends to be just below the top bar but the location does vary a bit depending on the particular advert) and they seem to mostly avoid adverts that make noise.
I'm not a subscriber and the only adverts I have seen on
reportedly far from perfect, and might disappear from the market soon.
IIRC you will still be able to install it under downgrade rights from OEM vista buisness/ultimate and from volume license versions of vista.
This would be a mechanism not totally unlike the printer/inkjet cartridge cycle.
and just as abusive
it's the *same* DVD for all versions.
It isn't actually there are at least six different vista DVDs for each language afaict. There is retail (which decides which edition to give you by the key) VLK buisness and VLK enterprise and each of those comes in a seperate x86 and x64 version. The x86 versions also come in the form of CD sets.
We can test this easily, in the era of the P3 a lot of office systems were DUAL ready, so that when your needs increased you could ad another P3 and have lots more power. How many of you did that with a P3 that had been in the office for more then a year?
I personally have never had an encounter with such a machine as my experiances with buisnessy PCs started more recently but given a roomfull of those systems that weren't keeping up I would probablly gut half of them for parts and use those parts to upgrade the other half.
That said, though, ok, I'll concede the point about simplicity. I can see how a multi-core design would be simpler.
and simplicity is good, a more complex decoder is likely to take more gates and flip-flops but more importantly tight coupling makes it much much harder to "place and route" the chip for high speed. You want loose coupling so it is easier for the placer to arrange the flip-flops and gates in a way that keeps flip-flops that feed each other close together and so that less rescourses are taken up on interconnect stuff.
I don't think it is that unlikely that AMD will fail (I will define failure in this context as no longer able to viablly produce chips that offer comparable price/performance to intel) look at how quickly cyrix fell from grace.
and the combination of licensing issues and intels economies of scale would make it very very difficult for a competitor to set up effectively.
you are assuming a competitor can produce them for the same cost. This is unlikely to be true due to economies of scale, patent licensing issues and trade secrets.
intel did this with the core duo chip selling chips with one core disabled as lower priced core solos.
It is really just a logical extention of the test them at different clock speeds and grade accordingly strategy that PC processor vendors have used for well over a decade.
stuff has a nasty habbit of sticking arround longer than you expect. You plan a system to last say 10 years at the companies current growth rate. After say 7 years your company reaches it's growth limit and becomes an income company or worse there is a rescession in your industry and your company teeters on the edge of bankrupcy. The system keeps running with few changes until it is say 20 years old at which point the hardware is becoming difficult to obtain but noone really understandards how the system works so rather than trying to port it they put it on an emulator. Before you know it the code has been running for decades.
File formats also have a nasty habbit of sticking arround longer than the software that works with them and file formats very often contain embedded binary date formats that were chosen simply because they were the default types for the platform in question.
which works fine until one of the cases actually hits court and this behaviour is disconvered during the case.......
You don't need lots of ports and optical drives to IM your friends
nor do you need a 13 inch screen and many gigs of storage.
the way I see it this is
* not much smaller than the basic macbook
* far more expensive than the basic macbook
* far lower featured than the basic macbook
You seem to be paying a large cost both in terms of price and features for a marginal improvement in portability and an improvement in coolness.
One option I thought would make it a lot more attractive would be built-in ripping of DVDs into iTunes.
Sadly apple can't do that, while DVD copy protection is thouroughly cracked it is still illegal to distribute tools for ripping DVDs in many countries. Small timers can get away with it but a company the size of apple would just get slapped with a lawsuit immediately.
but something dumbed down like an Asus Eee doesn't quite cut it, although for 1/5 the price it's awfully tempting
What can't the eeepc do that you require?
I can see the attraction of a true small form factor machine (e.g. libretto, eeepc, VAIO TZ ) but other than showing off I just don't see the use of ultra thin but large area machines. They seem like they would be very fragile and no less awkward to pack than slightly thicker machines like the regular macbook.
but who are these "subnotebooks" targeted at, anyway?
Afaict theese very thin laptops with largish screens are mosty targetted at those with more money than sense who are buying a machine based on looks rather than practicality. There are a surprising number of such people.
If you want a machine that is small in a pracitcal sense you need to give up screen size. If your application demands PC architecture that means machines like the libretto, the eeepc and the smaller vaios. If it doesn't then there are a variety of products that come from the large PDA direction.
There are two main problems with USB hubs in this context:
1: it's yet another box to carry arround (on top of your CD/DVD drive, network adaptor, mouse etc)
2: if the hub is self powered it needs to get it's power from somewhere (like batteries which will make it rather bulky). If it is bus powered you will have trouble with some devices because of lack of power availibility).
it hasn't been an issue (for most people) on the existing Macbook models
unlike the iPods and iPhones the macbooks DO have easilly removable batteries.
Maybe I'm missing the usefulness of some of those but it doesn't seem like a big deal.
lets see
Because it is lighter than air, airships and balloons are inflated with helium for lift. In airships, helium is preferred over hydrogen because it is not flammable and has 92.64% of the buoyancy (or lifting power) of the alternative hydrogen (see calculation.)
not that important because most really important uses of balloons (weather monitoring) are unmanned and so can use hydrogen.
For its low solubility in water, the major part of human blood, air mixtures of helium with oxygen and nitrogen (Trimix), with oxygen only (Heliox), with common air (heliair), and with hydrogen and oxygen (hydreliox), are used in deep-sea breathing systems to reduce the high-pressure risk of nitrogen narcosis, decompression sickness, and oxygen toxicity.
While a lot of diving is done just for pleasure diving is also done for industrial reasons such as maintinance of oil/gas rigs, some of that diving is pretty deep. Helium is by far the best mixer gas (and you need some mixer gas to get the overall pressure of the breathing gas right withotu making the partial pressure of oxygen/nitrogen dangerously high) for high pressure diving because it has a low molecular mass, is safe to handle and no (or at least very little) affect on the body.
* At extremely low temperatures, liquid helium is used to cool certain metals to produce superconductivity, such as in superconducting magnets used in magnetic resonance imaging. Helium at low temperatures is also used in cryogenics.
magnetic resonance imaging is a pretty important part of modern medicines.
* For its inertness and high thermal conductivity, neutron transparency, and because it does not form radioactive isotopes under reactor conditions, helium is used as a coolant in some nuclear reactors, such as pebble-bed reactors.
nuclear reactors are probablly going to be the main power source of the next half century or so once we realise that burning fossil fuels at the current rate is not reasonable, that renewables are an extra at best and that fusion is still a long way off.
* Helium is used as a shielding gas in arc welding processes on materials that are contaminated easily by air. It is especially useful in overhead welding, because it is lighter than air and thus floats, whereas other shielding gases sink.
welding is pretty important in a lot of industries
* Because it is inert, helium is used as a protective gas in growing silicon and germanium crystals, in titanium and zirconium production, in gas chromatography, and as an atmosphere for protecting historical documents. This property also makes it useful in supersonic wind tunnels.
silicon based computers have become a pretty vital part of the world economy
in rocketry, helium is used as an ullage medium to displace fuel and oxidizers in storage tanks and to condense hydrogen and oxygen to make rocket fuel. It is also used to purge fuel and oxidizer from ground support equipment prior to launch and to pre-cool liquid hydrogen in space vehicles. For example, the Saturn V booster used in the Apollo program needed about 13 million cubic feet (370,000 m) of helium to launch
while manned space exploration doesn't really achive all that much sattalites have certainly become pretty important in the modern world.
Because of its extremely low index of refraction, the use of helium reduces the distorting effects of temperature variations in the space between lenses in some telescopes.
probablly not that important
The age of rocks and minerals that contain uranium and thorium, radioactive elements that emit helium nuclei called alpha particles, can be discovered by measuring the level of helium with a process known as helium dating.
not really a use of helium in the sense we are talking about here.
The high thermal conductivity and sound velocity of helium is also desirable in thermoacoustic