Hi,
BIOS (Basic Input/Output System), please note the word 'BASIC'. This system firmware is used to allow the hardware to have the means of boot strapping a kernel that will hopefully support the hardware on the system board. This firmware will contain the means to handle the IPL then hopefully passing to the SPL. Most system manufactures will specify their needs to the BIOS creators. Sadly not all things are tested thoroughly. That's one of the best arguments about the open source community. Things are written for a project and open to the community to test and contribute. Thus things do have a better turn around. I too agree that assembly would be the best but the reason for high level languages was 'laziness' not efficiency in coding. I can remember coding in a 256B environment in machine code. When I moved to a larger machine with 16MB and assembly, I was in heaven. I remember having to use re-entrant code just to utilize my code base. Now programmers don't really care with all the memory available along with the processors. Please don't mis-understand me, it's just that bloat is a disease. One that has gotten to the point of a epidemic. I look at people like 'Steve Gibson' who is a very good asm coder. He's developed loads of apps and they were all written in assembly. Assembly is a viable language with today's newer hardware but you had better have a great toolbox or access to one. :) My point is that early BIOS was written in assembly by tight and great coders. Newer BIOS is actually synthesized with high level language from previous versions. It's rare to have a new completely re-written BIOS from scratch. Most evolves from or builds on a previous version. Sure when the new mega bit wide system is here then things will really change. :) maybe :jawa: |
Quote:
What about updates? Patches? The bios is extremely static, there are no updates a short time after the mobo is out and it will never see any anymore. There are no ways to update the BIOS automatically over the net and neither will there ever be thanks to people like you. Some of them offer automatic updating when you shove in a USB stick with the bios on it, but direct download? Wow, that seems impossible. Is it really so complicated? Everything else is already there and patching is best done frequently. There is no other way to close exploits. I am not advocating a BIOS with all bells and whistles, just the basic stuff that it does not have. But I know that nothing will change, it will stay pathetic and old and insufficent, the oldest crappyest part of any PC and the reason why it looks like a dinosaur. Coreboot looks so promising, too bad the industry usually does not touch anything that makes that much sense with a 27384734 foot pole. They just don't get it. There are actually people that want to solve this problem, non-profit, for them, yet they don't care. I guess it is the old "oh gosh, these open source hippies are going to steal our precious hardware specs" I will see that I get one of the supported boards and see some real sweet magic in action. And see the future, as it will be in 10 years, when finally, this old garbage cannot be cooked and recooked up anymore. Markus |
Quote:
The bios of course is tiny and has always been like this (that is why it does so little and has little automatic control and flexibility). We can easily afford the BIOS a little bigger and in a higher language than ASM, since it would still work faster, stabler and more functional. CoreBoot for example uses 2 CPUs when available to test the RAM, a thing that makes so much sense, but that no other BIOS currently does. Higher languages often are an excuse for bloat, yes. Efficient coding does not get old, in any language, high or low level. But would you admit that it requires more skill to pull off bug free structured code in ASM than in a high language? I think so. So forcing less talented programmers to have to code in ASM will actually worse code quality in many cases. Then there is of course again the question if a programmer that can only code in a cushion high level IDE environment shoud be coding at all and is not just annoying the rest of the worlds with his buggy code. Especially some corporate proprietary software comes to mind, which is obfuscated from prying (and would be laughing on the floor) eyes. In the OpenSource world, nobody would much use their codebase due to poor quality. Markus |
Quote:
The less you give to the attacker the less he has to work with, by allowing auto updates and flashed via web.. why don't you just invite the crackers in to your home and allow them to collect all the information they want and do what they want to your computer? because if there are auto updates to the bios (which is not protected by anything and has direct access to the hardware at all times) what is the difference? |
Quote:
Right now, BIOS upgrades are so incredible work intensive to do and dumb that automatic already means what I propose. Automatic as in "save a bunch of time". And no, the OS is not the place to do this, the BIOS must be independent updatable from the OS. What if your mobo does not recognize your HD and cannot boot the OS? The google talk about Coreboot are a real relieve: they show that coreboot (aka Linux BIOS) does everything better than normal BIOSes and there is no valid reason why it should not be used: http://www.youtube.com/watch?v=X72LgcMpM9k He mentions something that really is dumb and has bugged me time and time again: boot from a flash mass storage device or usb stick. Try that with a 3 or 4 year old Laptop and it will not work. But there is no reason why it should not work. The google talk is a very interesting watch, for all doubters out there. Markus |
Hi,
Quote:
ASM is a step above machine code therefore in a sense a means to write code in a easier understood fashion (a higher level). ASM can be coded along with comments to aid the author or others to understand the code. One must learn the semantics along with the syntax to write in any language, be it ASM, C or whatever. If you write in 'C' you had better comment so you can get back into the code days later to understand the code not just to provide someone else with the means to understand. As to the efficiency of a coder, remember the verse 'garbage in, garbage out' if that coder doesn't think out or reason well the needs of the program then the verse stands. Someone who just sits down at a terminal and starts pounding code will be pounding their head at some point in time. Any language has it's own problems as for efficiency. By writing in one and translating to another then some problems can be induced or even introduced. The big problem with BIOS is the restrictions or limitations of the size of the window of the map. I for one would not want a BIOS that would get on the net to update at the leisure or conditions of the machine without intervention. One has the choice to select the hardware along with the firmware. That's why there are so many different brands but notice the number of BIOS providers to the hardware industry. $$ |
Quote:
Quote:
Quote:
Quote:
Quote:
|
Hi,
Quote:
Quote:
Quote:
Quote:
Quote:
Plus you preach Coreboot and in the same state it's OK to let another take care of your BIOS. :rolleyes: |
Quote:
Insert Flash drive or floppy disk, format, copy BIOS update, flash.exe and flash.bat on to the media then reboot with media in the drive/usb slot... after it reboots and you have a prompt type "flash.bat" and your done... reset the CMOS data and power the system back on. It's not hard, maybe I am getting old but I think all the newbs want everything too fast, they want everything done within a blink of an eye yet do not want to understand how or why it works... you want it to be known as the magic box that could |
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
|
Quote:
I say keep the BIOS the way it is, if people want to flash an openBIOS its in there hands, this way you can't cry there is no support and people like me, who like there system just the way it is can have it the way we want it. Code:
section .text |
Hi,
Vincent, your an idiot! Nobody was talking about a benchmark comparison. Apparently you've never written a valid piece of code. If you don't understand the term benched when speaking about code. I'm not going to waste my time any longer with this since you really don't understand how the system functions nor why or when the machine is fist powered how things are initialized. Let alone know anything about machine code which is object code that is produced from the compilation of the higher level language; be it ASM, C or whatever. Or God forbid hand coded. Understand this, the CPU does not utilize anything but machine code which is the binary representation of the code. I'm through with this as you know nothing about the subject but continuing your inane banter. The link is so you can understand clearly my use of the language. That is if you really can read for understanding. BTW, your code snippet is worthless. |
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
|
Quote:
This right here proves you no nothing about programming, a compiler can give you the output (in asm) an assembler can't because it already is in assembly! if you are going to call someone an idiot get your facts straight, also "mr. everyone knows" interpreted languages aren't compiled either! so I'll ask you again get your facts straight!!!! |
Quote:
The only thing that a CPU does is 1, 0, 1, 0, 1, 0, 1, 0... Getting my facts straight? Rofl. I have never ever met somebody as stupid as you PS: hand over you IT card at the logout counter |
All times are GMT -5. The time now is 06:34 AM. |