5 ms·
If one knows what he is doing, it's possible to build such computers (PC, server). You can run PCs with just the generic drivers that come with Windows or React
by frik 11y ago
If one knows what he is doing, it's possible to build such computers (PC, server). You can run PCs with just the generic drivers that come with Windows or ReactOS, and the same goes for Linux and *BSD. It's usually means a few sacrifice and more effort on your side. Some distributions (afaik Debian) come without any blobs by default, but can be added to apt list. And maybe one should learn the difference between GPL and BSD licensed software - both have their advantages and disadvantages.
- chubot 11y agoWhat about hard disk controllers and the like? I think that's what Theo is talking about here. I'm not an expert, but I won't be surprised if it's completely unrealistic.
- frik 11y agoTheo wrote about software that flash hardware firmware (both provided as blob package), as I understood. Though flashing firmware is rather uncommon, but using a specific device driver for the operating system is a lot more common - and then I can understand that there is a wish for more open source device drivers in the Unix/BSD world. One usually rarely flashes the motherboard firmware (BIOS/EFI) or the graphic card firmware. A lot can go wrong, if the power goes down or the computer crash during a firmware flash-process, then the hardware is dead (except there is a backup-chip/logic like on more expensive motherboard e.g. Asus and Android devices). > hard disk controllers One usually never flash the HDD firmware. The same goes for the GSM/3G modem in your smartphone which is a separate real time OS on a separate ARM CPU. It's a blob and one buys it and cannot change it. It's also a black-box for Apple and Google and they cannot change them. There only less than a handful real completely open source smartphones with open source firmware ("open source hardware"), one example is OpenMoko (2011): http://en.wikipedia.org/wiki/Openmoko http://en.wikipedia.org/wiki/Openmoko The Linux/*BSD/Android world has a historical deficit in the availability of suitable drivers. Also the binary ABI isn't stable like on WindowsNT which means older drivers don't work with never kernels (e.g. Android upgrade means no camera). There are open source projects that could make a difference, if they get more donations like: ReactOS which aims to be binary compatible with Windows NT series hardware drivers. And NDISwrapper, that recreated a partial Windows NT kernel (using ReactOS code) inside a Linux kernel making it possible to execute modern Windows drivers in Linux. It consists of a NTOSKRNL API, a basic WDM controller, and a set of Windows call wrappers such as Wireless/NDIS/USB/PnP to Linux APIs.
- seba_dos1 11y agoThere are no open source smartphones with open source firmware for their modems. The closest you can get is Openmoko Neo Freerunner with OsmocomBB installed, but you cannot legally use it to transmit anything on public networks before you obtain new certification for the modem, as replacing the firmware voids the one vendor got for you. The best you can get regarding openness of devices that can be practically used is to completely separate the main CPU from baseband processor (sans some generic interface like USB or serial) and this is exactly what Openmoko, and now also Neo900 are doing. Neo900 project goes one step further - it assumes the modem is a rogue black box by default, so deploys systems that allow the user to monitor the modem. Unfortunately, mainstream devices go further and further away from that separation and now most of the time use fully integrated designs, where the non-free firmware of the baseband has full access to user OS via shared RAM or even shared CPU.
- duskwuff 11y agoHell, what about hard disks? Those have firmware too; it's often updatable from the host, and can be modified to add surprising new behavior: http://www.malwaretech.com/2015/05/hard-disk-firmware-hacking-final-part.html http://www.malwaretech.com/2015/05/hard-disk-firmware-hackin... But, oddly enough, I have yet to hear anyone calling for open-source hard drives...
- chubot 11y agoI believe that's what I said. The hard disk controller is a chip packaged with the hard drive. The CPU talks to the hard disk controller to get data from the disk, with IDE commands or something like that. I think controllers used to be dedicated circuitry, but now they are more like CPUs with firmware. http://en.wikipedia.org/wiki/Disk_controller http://en.wikipedia.org/wiki/Disk_controller http://en.wikipedia.org/wiki/Controller_(computing) http://en.wikipedia.org/wiki/Controller_(computing) In a modern computer, there are dozens of these little chips, each having security implications. Nobody knows the provenance of all the code since they are mostly manufactured overseas.
- duskwuff 11y agoOh, when you said "hard disk controller" I thought at first you meant the SATA bus master.
- pgeorgi 11y ago> But, oddly enough, I have yet to hear anyone calling for open-source hard drives... Fruitless debates about HDD firmware (and many more) are an undying hobby of some people in the wider coreboot community. These days the topic comes up every week or two.