Posts Tagged ‘BIOS’
Recently one of our forum members, EvanCarroll, started an online petition to request the removal of WIFI whitelists from Lenovo bios. I highly encourage everyone here to support this effort by taking a minute out of your day to sign it. If an online petition can get 270,000+ signatures supporting the deportation of Justin Bieber, then we should at least be able to get a few thousand to support the removal of WIFI whitelists. Thanks!
In case you didn’t already know, the Extensible Firmware Infrastructure’s Human Interface Infrastructure uses Internal Forms Representation protocol to display things like your setup utility’s menu. By having access to the Internal Forms Representation, we can know everything about a menu which can assist us immensely when modding bios. I’ll also be using this application in a few of the tutorials I write, so get used to using it now
I was getting tired of all the requests to expand EFI IFR Dumper to include support for UEFI’S IFR protocol, and as a result I decided that now is a better time than any to update my program. So here’s Universal IFR Extractor, the successor to EFI IFR Dumper. Designed to easily extract and convert the Internal Forms Representation used in EFI modules into a human readable format. Now supports both EFI and UEFI IFR protocols, so it should work with all cases
In additional, Universal IFR Extractor now has a graphics user interface to make it easier to use. It’ll quickly tell you what protocol a selected module uses so that you’ll be able to know what protocol format you should know in order to modify the forms. Intel has great documentation on how EFI and UEFI IFR is formatted, so it should be too hard to start modifying it after reading through those. I’ll also create a tutorial on how to preform simple modifications, like how to unsuppress hidden options, so stay tuned. Hope you all enjoy! Download it here
I first started working on Module Helper back in September when Andy’s tool V2.19 was released. As some of you may know, that iteration altered the format of the extracted EFI modules by storing a module’s header, code, and name all in the same file. This created some issues with disassemblers not being able to automatically recognizing the format of the EFI modules and the size of data modules not being updated if changed. Dealing with all these negative aspects was trivial but annoying, which is why Module Helper was developed. It was originally capable of splitting the modules header and data into separate files an it could update the sizes in the headers. It also had a renaming feature that would make locating certain modules easier. I only made this program only for Linux, but I had always planned to port it over to Windows before releasing it.
However, Andy’s tool V2.50 was recently released, and it has switched back to using the earlier format for the extracted modules. This event made Module Helper obsolete, but by this time I had gotten used to how it would rename functionality. I didn’t want to lose this convince, so I changed it a little to work with the latest version of Andy’s tool.
Well that’s enough with the history behind it. Now I’d like to finally release Module Helper. It’s capable of renaming EFI modules to include each of their names before their GUID in order to make identifying them easier. There are some important modules that don’t contain names though, and fortunately those cases are also dealt with. Modules which contain only an image or data will be renamed reflect that. I’ll be using this is tool in nearly all the tutorials I write, so you’ll quickly be able to see how it can be used to speed up the modding process. Hope you enjoy!
With the advent of UEFI and Windows 8 comes some security and usability issues. When Windows 8 is released, UEFI’s “Secure Boot” will be required to be turned on by default and it will be left to the OEM’s on how to implement it. What does this mean to you? Maybe nothing.
Windows is still the most popular PC Operating System in the world. As such, it is highly likely that the computer you are reading this article on is running some version of Microsoft Windows. If you are running Windows 7 and up, your OS is compliant to UEFI specifications. But what if you want to run a different OS, like Linux, older versions of Windows? You could be out of luck.
What is Secure Boot?
Secure Boot is a UEFI 2.3.1 specification that during the boot process verifies certificates (or keys) held in the firmware, and compares them to other Option Roms and OS boot loaders. If the correct key is not in the firmware, or is in the “Blacklist”, Secure Boot will prevent the OS from loading or could prevent you from upgrading to certain manufacturers option cards. Since it will be up to the OEM (Original Equipment Manufacturer) to implement the Secure Boot feature, it is also up to them whether or not to add an option in the set-up to disable it, or to be able to update the “Allowed” OS list. So, if you were to buy a Windows 8 PC and want to install a new version of Linux, and there is no option to disable Secure Boot, and the key for the version of Linux you are installing is not found in the firmware, the OS will fail to load. This feature is intended to prevent malware such as “rootkits” and “bootkits” to install themselves and run when booting your OS. According to Microsoft, the Windows 8 implementation of Secure Boot, programs will not be able to change Secure Boot security settings to prevent malware from gaining access through reprogramming the firmware.
Are you losing control?
Because it’s the OEM’s decision to make a choice whether to include a disable feature for Secure Boot, or a way to update keys, PC’s can effectively be “locked” to one certain OS without the option to install a different OS. This would not affect usability for most people, but for “techies” and “geeks” (such as myself) this poses a very real problem. Canonical and Red Hat wrote a white paper addressing these issues. Microsoft wrote an article in their blog that clarifies Microsoft’s requirements regarding Secure Boot. Microsoft insures that an option to turn off Secure Boot in x86 PC’s setup must be present to be Windows 8 certified. However, that option will not be present in ARM processors (as of this writing). Meaning that, if the specifications are not changed, equipment that use ARM processors, i.e. Netbooks, will be “locked” to using Windows 8 if it was installed at the time of purchase.
This could be a very real threat for those who choose to run an alternate OS, and could be difficult for those who are not technically inclined.
Ever since the computer was born, there needed to be a program to tell the CPU where things are and how to use them. In 1981 the IBM 5150 introduced the BIOS (Basic Input/Output System) to the IBM-PC market. The IBM 5150 had an 8088 16bit (16bit internal bus, 8bit external bus) processor, so the BIOS chip was limited to 16 bits and 1MB of memory space. Years went by and the CPU became more powerful, with a wider bus and more memory access. However, the BIOS remained the same, and retained it’s 16bit bus and 1MB memory limit, depending on the PC-AT hardware platform.
Enter EFI/UEFI (Extensible Firmware Interface/Unified Extensible Firmware Interface respectively). EFI was introduced in the mid-1990′s with the Intel-HP Itanium processor systems as the older BIOS was considered too limited for large server systems. In 2005 Intel dropped the EFI platform and handed it over to the Unified EFI Forum, which then became the UEFI.
There are several advantages to UEFI over the BIOS. UEFI boots faster, has the ability to boot from very large hard disks over 2TB, drops the MBR (master boot record) for the GUID Partition table, architecture and drivers are CPU-independent, an extensive GUI with mouse and network capabilities are possible, and ACPI and SMBIOS are also included as these are not dependent on the 16bit limitations of the older BIOS.
UEFI requires the Operating System and the Firmware to be matched. Therefore, 64bit UEFI can only run a 64bit Operating System. Microsoft Windows started support for UEFI beginning with 64bit Windows Vista Service Pack 1 and Windows 7 64bit versions support UEFI, as does Linux and Intel Mac’s OSX.
UEFI does not boot the same as a BIOS does. It requires a special partition table that points to a partition that has a special file that UEFI can load rather than just relying on the boot sector. Since the UEFI boot loader is a kind of UEFI application, it can be used to add extra functionality, such as choosing which Operating System to boot from. It can also auto-detect the boot loader so that it can be used to boot from removable media.
Several Virtualization platforms have implemented UEFI. Virtualbox 3.1+, VMware Fusion 3+, and QEMU can be used with UEFI. Virtualbox with UEFI will only work with Linux/Unix Operating Systems, so Windows will not work on Virtualbox using UEFI.
The HP MediaSmart Server is a versatile OEM Windows Home Server Version 1 product, and is well known for its low power consumption and small form factor. Several months ago, BIOS-Mods helped several other developers compile a BIOS image that would enable true dual core and quadcore CPU support for the EX485 platform to have similar if not better performance than the emerging EX495. After many successful upgrades without BIOS modification, it was established that there were several issues with sleep and shutdown with the “R0″ revision Intel CPUs.
The modding then plunged onward with flashing the EX495 BIOS to the EX485. This was very successful, except there was an incompatibility with the fan speeds and it was determined it would not be a suitable solution. After another few attempts, a bad image was produced and indeed “bricked” the MediaSmart server at BIOS-Mods. Several other owners were also affected.
For anyone who wishes to recover from a bricked BIOS on their Mediasmart after a bad flash, BIOS-Mods now has a proven method for BIOS recovery. Please note if you are testing images for RAID or CPU support, it is reccomended that you always preserve the bootblock, which the recovery method relies upon.
1. Download the original EX485 BIOS image for your server here.
2. Place the image onto an empty USB stick (FAT or FAT32), and rename the file to AMIBOOT.ROM
3. Insert the USB drive into the bottom port on the back of the server.
4. When the server is plugged in, start the server and quickly hold down the recovery button on the server for approximately 5 seconds. The recovery light will then start to flash an aqua to white color. During this time, press Ctrl + Home on your keyboard (USB keyboard, or PS2 keyboard with the adapter, try both to ensure the keystroke is sent). and hold for 3 seconds. Then, your flash drive light activity will flash for a few moments, and your server will reboot automatically with the restored EX485 BIOS.
Now that BIOS-Mods has had a successful recovery procedure developed for the MediaSmart server, stay tuned for RAID5 and CPU support enhancements.
Our team of experts works daily to help modify and update your BIOS, and answer your requests within 24hrs.
What is a Bios? A BIOS is defined as a Basic Input Output System.The BIOS is boot firmware, designed to be the first code run by a PC when powered on. The initial function of the BIOS is to identify, test, and initialize system devices such as the video display card, hard disk, floppy disk and other hardware. The BIOS sets the machine hardware into a known state, so that software stored on compatible media can be loaded, executed, and given control of the PC. This process is known as booting, or booting up, which is short for bootstrapping. One of the most important elements of the BIOS for the user is the setup screen, where users can configure startup options and push PC hardware to its limits.
Where do we come in? As the modern age of technology exponentially grows in complexity, so does the BIOS. Bioses become more complex, larger in size, and harder to understand. Not only do they become more complicated, but OEM manufacturers (HP, Dell, Acer, etc.) attempt to limit their BIOSes capabilities, to prevent users from running their computer at specifications that could be dangerous to the system. This includes disabling Overclocking abilities, CPU Microcode Updates, uncertified wireless cards, and much more.
What we help you accomplish in our forums is to unlock the potential of your BIOS in a timely fashion, and help you to better understand your BIOS. Here are just a few examples of the modifications we perform:
* Custom Boot Screens and Logos.
* Award/AMI Unlock Overclocking and Hidden Options.
* Whitelist Wificard Modification (For enabling Wifi cards on uncertified PC’s)
* AMD and Intel CPU Microcode Updates.
What if I’m only looking to update a certified BIOS from the manufacturer? No problem. Both the community and the resource pages on the site will help you understand the fundamentals of updating your computer’s BIOS on any system. Please visit our BIOS Update Resource Page for more information.
1234s282 and TheWiz