No... it looks like they got a licensed BIOS development kit, added code that broke Linux and didn't test it. Asus uses AMIBIOS and ships a lot of Linux systems (ever heard of the EeePC?) so I think this is a Foxconn "oops".
ACPI has a method (equivalent to a function in other programming languages) called "_OSI" which allows the ACPI code to know which OS is running. It's a documented ACPI call in the ACPI 2.0 spec.
BIOS manufacturers tend not to use the call, because their goal is to support any OS. Sometimes board manufacturers use it to make small tweaks to ACPI handling between different operating systems, since each one acts a little different.
If Foxconn made a fix that was only invoked when Windows was running and didn't bother to test the code on a non-Windows OS (Linux, BSD,...) then there's your bug. A programmer creates a "if" clause based on the _OSI return value, but forgets to make an corresponding "else" clause.
One mentality in the Linux kernel developer community is to "pretend to be Windows", trying to guarantee that these workarounds get executed. If the Linux & Windows kernels worked the same way, this would be a wise move... but we know they don't (otherwise _OSI would not exist).
The right thing to do is what happened in this case... report bugs back to the manufacturer, stop buying their products if they don't fix it.
Ryan1984's post makes it sound like a generic AMI BIOS problem with Linux... I don't think this is the case. AMIBIOS runs well on Linux generically (it's on Sun Microsystems servers, the Asus EeePC & EeeBox, which all work with Linux) so this is probably Foxconn introducing a problem when they ported the BIOS to their boards.
Board manufacturers like Foxconn get a development kit from the BIOS manufacturer then port it to their platform. If Foxconn made a BIOS fix for Windows then didn't test it with Linux, this would cause the issue. A similar situation would be if a company made a variation of a Linux distro for their products but broke somethign that worked generically in the original distro.
I think the community response worked great for getting Foxconn to pay attention to Linux. They saw their business & reputation threatened and are trying to fix the problem.
I put this comparison up weeks ago, mostly for friends who were debating which one to purchase...
http://siliconchef.com/2008/01/31/subnotebook-gladiators-part-2/
Overall I think the EeePC is the more flexible unit for the typical computer user. The OLPC has some great features and concepts, but casual use is limited by design features that make it great for the 3rd world market.
I just don't take my cell phone to bed. My wife already complains that I spend too much time using my phone to text message friends & check my e-mail. I'd be divorced if I actually took it into the bedroom.
On a platform designed to Trusted Computing Group standards, this type of BIOS hack would be a lot harder to pull off. It's not all about using the TPM for DRM to stop music piracy... there are legitimate security concerns like this that cause companies & business to look at security standards.
You would need an install CD that boots to EFI, a LILO/GRUB replacement, and a kernel with an entrypoint that isn't in x86 real-mode.
There's an EFI bootloader called elilo in sourceforge, but it's a bit of a hack... it starts in 32-bit protected mode, then jumps to real mode (a huge no-no in EFILand) then does the same bootstrap used by the BIOS. There's no guarantee that would fly on the MacIntelTosh.
The current EFI-Linux on x86 requires installing with the BIOS first, then adding elilo later... also less than ideal.
XP has to have the runtime services provided by the BIOS to boot (INT 19h, INT 13h, data tables, etc.). The XP bootloader also starts in "real mode" (think 8086, 1MB memory limit, 16-bit instructions, etc.).
EFI doesn't provide any of the BIOS interfaces natively. It also boots up in 32-bit protected mode, which the XP loader can't use.
Any EFI system that can also boot OS from current PCs (XP/DOS/Linux) carries an extra component called the "compatability support module" (CSM). This overlays the BIOS interface onto some EFI implementations, but this is only licensed from a few BIOS vendors.
Apple doesn't need the CSM code to boot OSX, so it's not on their platforms. No CSM... no Windows XP.
Vista might work, because it has a native EFI install mode... but Vista EFI might only come in the 64-bit flavor. Apple's current platform is 32-bit only. The current EFI standard (EFI 1.10) doesn't support x64. The upcoming standard (UEFI 2.0) does support x64, but won't boot an x64 OS unless the firmware is 64-bit (runtime calls to the firmware have to match the native platform firmware, and x64 can't make callbacks in 32-bit protected mode... so 32-bit firmware only boots a 32-bit OS, and 64-bit firmware only boots a 64-bit OS)
So Vista would only be viable if (a) Apple makes a 64-bit MacIntelTosh, or (b) Microsoft makes a 32-bit EFI/UEFI version of Vista.
The news, colleges, Google, spies, gurus on the mountain top, private investigators, documentary film makers, political advisors, Number 2 in The Village, the head of the "popular group" in high school, the hacker who knows all the backdoors, the creepy old guy in every horror film that knows all about the serial killer...
How is this information any different? More personal, sure, but it is no different than any other paid information source. Information is easier to catalog than before, so it's just a bit easier to be intrusive.
The ChoicePoint scandal illustrated to the world how information gathering, and how that information can be exploited in the name of fraud, has changed over time. That type of data is a necessary evil in the world of credit cards & on-line shopping... your payment history is the new collateral.
EFI/UEFI is just a more modern firmware-to-OS interface. It doesn't require any more computing requirements than a BIOS on the same platform. I've seen it run on headless servers, notebooks, desktops & media PCs.
Intel talks about this point a lot in their EFI presentations: OpenFirmware isn't 100% ready for standards in the PC market, like ACPI. Since it's a small IEEE group that isn't terribly active, it would take a long time to modify the spec. Check out some of Intel's past presentations on their IDF website.
A lot of the OF features listed by./ users can be built into a PC BIOS or EFI firmware. Press a key for alternate boot, network boot & a list of active devices... already in a lot of Taiwan mobo BIOS & OEM products.
While OpenFirmware is a BIOS alternative, many companies don't feel it's what they need for their market. OF is only in large use by two companies, Sun & Apple. Sun only uses OpenFirmware on their non-x86 platforms, and Apple is going away from OF to EFI in the new Intel Inside Mac (aka "PentaMac", "iNtel").
... change to Daylight Saving Time on Saturday @ 2am instead of Sunday @ 2am? This would give an extra day to get used to the time change for the average 40-hour-a-week-worker-bee.
Good: anybody can make a movie on the internet.
Bad: anybody can make a movie on the internet.
Good for them creating such a big project... but it really doesn't look as good as the majority of the fan films I have seen. It doesn't really create the illusion of being in another world, which is really required for Pratchett. The effects are not very "special", given what is now available for your PC.
The 300 euros is a non-factor in my mind. We did over an hour of slide & video material for Dragon*ConTV 2004 last year and barely spent any money. It took months off of my life, but it was a lot of fun (already started on the next season). We borrowed a lot of stuff, so somebody spent money (just like "free" software still requires somebody to buy the developer's computer).
Well, there's two different laptop stories that got merged into this thread... HP/Compaq (HewpaQ?, Compackard?) and IBM. The original story is a blogger bitching about his HP then pointing to an IBM/Phoenix BIOS hack.
The failure to boot on unsupported cards based on a BIOS check is probably related to this FCC certification issue (see other posts regarding integrated antennas vs. stand alone cards). Various reports say this issue can be hacked in hex, disabled in setup or bypassed with a BIOS update. So once the BIOS setup check is thwarted, the user may be able to boot but experience reduced network device functionality (driver may not load, network boot disabled, etc.).
In reality, the FCC issue is probably the major reason for implementing the check (pesky radio waves getting in the way of my perfectly good theory). Right behind it is my option ROM theory, and the added benefit of some annoyed early adopter trading his old portable for some slim Centrino when 802.11b goes out of vogue.
Part of the lesson is that laptop manufacturers use standards like miniPCI as a way for the assembly lines to standardize production, not as a way to standardize expansion for the end-user. With more "white box laptops" coming to the market (like the Asus I'm using right now), the trend may go to selling laptops as barebones PCs (my laptop actually has a socketed CPU that's accessible by removing one screw).
Unlike a regular PCI add-in card, the miniPCI WiFi card(s) in question doesn't contain a PCI option ROM. Like VGA, SCSI or RAID cards, this option ROM configures the device before the OS loads.
Since the option ROM isn't on the device, the ROM is stored in the system BIOS. When PCI option ROMs are stored in the BIOS, they are associated with the device's PCI "vendor ID" and "device ID". The "hack" described in an earlier post tells the BIOS to look for a different vendor/device ID (which hopefully is compatible with the embedded option ROM).
Some network adapters require the option ROM for the OS drivers to work, and network booting requires the option ROM so the BIOS can use UNDI/PXE.
This is a support problem from the notebook manufacturer. They only tested a few adapters, and only have room in the BIOS for one network option ROM. This has nothing to do with "trusted computing" or weird conspiracy theories. If the integrated card can't be upgraded, then USB or PCMCIA devices should be an option.
... duct tape! A piece of duct tape over the IR receiver will stop these devices from doing bad things to TVs. I think bar owners everywhere will be stragetically placing grey tape on their TV after football fans beat the &^%$ out of the geek with this on their keychain.
I bought a Sharp WD-450 last year. It was cheap ($450), has a good lens (26X optical zoon Canon) and takes good pictures as long as it's in bright light (candlelight == bad). I used it to produce a martial arts instructional DVD & some videos for DragonCon.
The problem is it's a single CCD camera, so the color depth & quality isn't so good. I also couldn't plug in an external mic... I'm starting to do some for-hire video work & a wireless mic comes in handy.
I just bought a Sony TRV-950 (about $1400), a three CCD camera that came highly recommended for price vs. quality. It's got a bunch of Bluetooth features that I don't need... the bottom line is that it takes great video. It has a bunch of manual controls that aren't required for most home videos.
I think something like my Sony is overkill for vacation videos & baby pictures. For under $1000 you can get a 3 CCD camera from Panasonic, like the PV-DV953. You can also find good cameras for personal use in the $500-$700 range. You can go cheaper, but just make sure you get a good lens. Some of the lower-end camcorders use lousy lenses. I was okay with that first cheap Sharp camera because it has a Canon lens. These days, $1,000 will buy a camera as good as the $10,000 studio cameras I used to use for college television.
For reviews I use camcorderinfo.com... good site that often reviews the same camera twice (from two different authors) to provide more information. They lean towards pro equipment, so don't be put off by a camcorder they rank as a 7.0 or 7.5... it might be just fine for what you need.
No ... it looks like they got a licensed BIOS development kit, added code that broke Linux and didn't test it. Asus uses AMIBIOS and ships a lot of Linux systems (ever heard of the EeePC?) so I think this is a Foxconn "oops".
ACPI has a method (equivalent to a function in other programming languages) called "_OSI" which allows the ACPI code to know which OS is running. It's a documented ACPI call in the ACPI 2.0 spec. BIOS manufacturers tend not to use the call, because their goal is to support any OS. Sometimes board manufacturers use it to make small tweaks to ACPI handling between different operating systems, since each one acts a little different. If Foxconn made a fix that was only invoked when Windows was running and didn't bother to test the code on a non-Windows OS (Linux, BSD, ...) then there's your bug. A programmer creates a "if" clause based on the _OSI return value, but forgets to make an corresponding "else" clause.
One mentality in the Linux kernel developer community is to "pretend to be Windows", trying to guarantee that these workarounds get executed. If the Linux & Windows kernels worked the same way, this would be a wise move ... but we know they don't (otherwise _OSI would not exist).
The right thing to do is what happened in this case ... report bugs back to the manufacturer, stop buying their products if they don't fix it.
Ryan1984's post makes it sound like a generic AMI BIOS problem with Linux ... I don't think this is the case. AMIBIOS runs well on Linux generically (it's on Sun Microsystems servers, the Asus EeePC & EeeBox, which all work with Linux) so this is probably Foxconn introducing a problem when they ported the BIOS to their boards.
Board manufacturers like Foxconn get a development kit from the BIOS manufacturer then port it to their platform. If Foxconn made a BIOS fix for Windows then didn't test it with Linux, this would cause the issue. A similar situation would be if a company made a variation of a Linux distro for their products but broke somethign that worked generically in the original distro.
I think the community response worked great for getting Foxconn to pay attention to Linux. They saw their business & reputation threatened and are trying to fix the problem.
I put this comparison up weeks ago, mostly for friends who were debating which one to purchase ...
http://siliconchef.com/2008/01/31/subnotebook-gladiators-part-2/
Overall I think the EeePC is the more flexible unit for the typical computer user. The OLPC has some great features and concepts, but casual use is limited by design features that make it great for the 3rd world market.
Sometimes a piston is just a piston
I just don't take my cell phone to bed. My wife already complains that I spend too much time using my phone to text message friends & check my e-mail. I'd be divorced if I actually took it into the bedroom.
On a platform designed to Trusted Computing Group standards, this type of BIOS hack would be a lot harder to pull off. It's not all about using the TPM for DRM to stop music piracy ... there are legitimate security concerns like this that cause companies & business to look at security standards.
You would need an install CD that boots to EFI, a LILO/GRUB replacement, and a kernel with an entrypoint that isn't in x86 real-mode.
... it starts in 32-bit protected mode, then jumps to real mode (a huge no-no in EFILand) then does the same bootstrap used by the BIOS. There's no guarantee that would fly on the MacIntelTosh.
... also less than ideal.
There's an EFI bootloader called elilo in sourceforge, but it's a bit of a hack
The current EFI-Linux on x86 requires installing with the BIOS first, then adding elilo later
XP has to have the runtime services provided by the BIOS to boot (INT 19h, INT 13h, data tables, etc.). The XP bootloader also starts in "real mode" (think 8086, 1MB memory limit, 16-bit instructions, etc.).
... no Windows XP.
... but Vista EFI might only come in the 64-bit flavor. Apple's current platform is 32-bit only. The current EFI standard (EFI 1.10) doesn't support x64. The upcoming standard (UEFI 2.0) does support x64, but won't boot an x64 OS unless the firmware is 64-bit (runtime calls to the firmware have to match the native platform firmware, and x64 can't make callbacks in 32-bit protected mode ... so 32-bit firmware only boots a 32-bit OS, and 64-bit firmware only boots a 64-bit OS)
EFI doesn't provide any of the BIOS interfaces natively. It also boots up in 32-bit protected mode, which the XP loader can't use.
Any EFI system that can also boot OS from current PCs (XP/DOS/Linux) carries an extra component called the "compatability support module" (CSM). This overlays the BIOS interface onto some EFI implementations, but this is only licensed from a few BIOS vendors.
Apple doesn't need the CSM code to boot OSX, so it's not on their platforms.
No CSM
Vista might work, because it has a native EFI install mode
So Vista would only be viable if (a) Apple makes a 64-bit MacIntelTosh, or (b) Microsoft makes a 32-bit EFI/UEFI version of Vista.
The news, colleges, Google, spies, gurus on the mountain top, private investigators, documentary film makers, political advisors, Number 2 in The Village, the head of the "popular group" in high school, the hacker who knows all the backdoors, the creepy old guy in every horror film that knows all about the serial killer ...
... your payment history is the new collateral.
How is this information any different? More personal, sure, but it is no different than any other paid information source. Information is easier to catalog than before, so it's just a bit easier to be intrusive.
The ChoicePoint scandal illustrated to the world how information gathering, and how that information can be exploited in the name of fraud, has changed over time. That type of data is a necessary evil in the world of credit cards & on-line shopping
After all, the movie has already produced this infomercial
Check the BIOS folks out ... you'll see their EFI products support the PC BIOS interfaces & the EFI boot/runtime interfaces.
With IBM & HP on the board of directors, I don't see a total lock by Microsoft in this organization when it comes to the OS.
EFI/UEFI is just a more modern firmware-to-OS interface. It doesn't require any more computing requirements than a BIOS on the same platform. I've seen it run on headless servers, notebooks, desktops & media PCs.
Intel talks about this point a lot in their EFI presentations: OpenFirmware isn't 100% ready for standards in the PC market, like ACPI. Since it's a small IEEE group that isn't terribly active, it would take a long time to modify the spec. Check out some of Intel's past presentations on their IDF website.
./ users can be built into a PC BIOS or EFI firmware. Press a key for alternate boot, network boot & a list of active devices ... already in a lot of Taiwan mobo BIOS & OEM products.
A lot of the OF features listed by
While OpenFirmware is a BIOS alternative, many companies don't feel it's what they need for their market. OF is only in large use by two companies, Sun & Apple. Sun only uses OpenFirmware on their non-x86 platforms, and Apple is going away from OF to EFI in the new Intel Inside Mac (aka "PentaMac", "iNtel").
Go check out the EFI spec, note the lack of any DRM/TPM/security requirements on the platform.
... period.
EFI doesn't mandate DRM
Yeah, but I can actually get code/product based on EFI ... no such luck for DNF.
Apple is using EFI/UEFI for their new Intel Inside Macs, but they haven't joined the group yet.
... change to Daylight Saving Time on Saturday @ 2am instead of Sunday @ 2am? This would give an extra day to get used to the time change for the average 40-hour-a-week-worker-bee.
The comedy just writes itself.
Good for them creating such a big project ... but it really doesn't look as good as the majority of the fan films I have seen. It doesn't really create the illusion of being in another world, which is really required for Pratchett. The effects are not very "special", given what is now available for your PC.
The 300 euros is a non-factor in my mind. We did over an hour of slide & video material for Dragon*ConTV 2004 last year and barely spent any money. It took months off of my life, but it was a lot of fun (already started on the next season). We borrowed a lot of stuff, so somebody spent money (just like "free" software still requires somebody to buy the developer's computer).
Well, there's two different laptop stories that got merged into this thread ... HP/Compaq (HewpaQ?, Compackard?) and IBM. The original story is a blogger bitching about his HP then pointing to an IBM/Phoenix BIOS hack.
The failure to boot on unsupported cards based on a BIOS check is probably related to this FCC certification issue (see other posts regarding integrated antennas vs. stand alone cards). Various reports say this issue can be hacked in hex, disabled in setup or bypassed with a BIOS update. So once the BIOS setup check is thwarted, the user may be able to boot but experience reduced network device functionality (driver may not load, network boot disabled, etc.).
In reality, the FCC issue is probably the major reason for implementing the check (pesky radio waves getting in the way of my perfectly good theory). Right behind it is my option ROM theory, and the added benefit of some annoyed early adopter trading his old portable for some slim Centrino when 802.11b goes out of vogue.
Part of the lesson is that laptop manufacturers use standards like miniPCI as a way for the assembly lines to standardize production, not as a way to standardize expansion for the end-user. With more "white box laptops" coming to the market (like the Asus I'm using right now), the trend may go to selling laptops as barebones PCs (my laptop actually has a socketed CPU that's accessible by removing one screw).
Unlike a regular PCI add-in card, the miniPCI WiFi card(s) in question doesn't contain a PCI option ROM. Like VGA, SCSI or RAID cards, this option ROM configures the device before the OS loads.
Since the option ROM isn't on the device, the ROM is stored in the system BIOS. When PCI option ROMs are stored in the BIOS, they are associated with the device's PCI "vendor ID" and "device ID". The "hack" described in an earlier post tells the BIOS to look for a different vendor/device ID (which hopefully is compatible with the embedded option ROM).
Some network adapters require the option ROM for the OS drivers to work, and network booting requires the option ROM so the BIOS can use UNDI/PXE.
This is a support problem from the notebook manufacturer. They only tested a few adapters, and only have room in the BIOS for one network option ROM. This has nothing to do with "trusted computing" or weird conspiracy theories. If the integrated card can't be upgraded, then USB or PCMCIA devices should be an option.
... duct tape! A piece of duct tape over the IR receiver will stop these devices from doing bad things to TVs. I think bar owners everywhere will be stragetically placing grey tape on their TV after football fans beat the &^%$ out of the geek with this on their keychain.
I bought a Sharp WD-450 last year. It was cheap ($450), has a good lens (26X optical zoon Canon) and takes good pictures as long as it's in bright light (candlelight == bad). I used it to produce a martial arts instructional DVD & some videos for DragonCon.
... I'm starting to do some for-hire video work & a wireless mic comes in handy.
... the bottom line is that it takes great video. It has a bunch of manual controls that aren't required for most home videos.
... good site that often reviews the same camera twice (from two different authors) to provide more information. They lean towards pro equipment, so don't be put off by a camcorder they rank as a 7.0 or 7.5 ... it might be just fine for what you need.
The problem is it's a single CCD camera, so the color depth & quality isn't so good. I also couldn't plug in an external mic
I just bought a Sony TRV-950 (about $1400), a three CCD camera that came highly recommended for price vs. quality. It's got a bunch of Bluetooth features that I don't need
I think something like my Sony is overkill for vacation videos & baby pictures. For under $1000 you can get a 3 CCD camera from Panasonic, like the PV-DV953. You can also find good cameras for personal use in the $500-$700 range. You can go cheaper, but just make sure you get a good lens. Some of the lower-end camcorders use lousy lenses. I was okay with that first cheap Sharp camera because it has a Canon lens. These days, $1,000 will buy a camera as good as the $10,000 studio cameras I used to use for college television.
For reviews I use camcorderinfo.com