JH-IM je napisao/la:shrike je napisao/la:
Zato što bi takve stvari zahtijevale brutalno goleme količine novaca, veće nego što ih ima itko iz svijeta linuxa. Jedina šansa je opcija di se linux stavlja na limitirani niz HW-a i to prodaje više manje kao neki „appliance“.
To je prilično dobra ideja. Nešto kao Linux Chromebookovi sa nekakvim predinstaliranim unaprijed podešenim Linuxom za surfanje, multimediju i Office, integracija sa cloud servisima i slično. Moglo bi mu se i dodati Steam za Linux da ga se reklamira i kao opciju za gaming na jačim modelima. Ubuntu LTS ili Debian+lagani desktop shell koji je jednostavan, funkcionalan i lijep, touch friendly obavezno, predinstalirani svi popularni browseri, audio, video i Office programi koje korisnik može trebati. Uz to nuditi i neke IoT proizvode koji bi se dobro integrirali sa njim, to već Ubuntu može sa svojim Ubuntu Coreom, mislim da bi to bio dobar način kako povećati broj korisnika i privlačiti ih općenito da koriste Linux. Prodavati ga kao laptope i kao mini boxove koji mogu biti korišteni kao računalo i HTPC.
Šta tako nešto ne radi System76 ili Dell sa svojim XPS Sputnikom ili kako se već zove?
shrike je napisao/la:Da budem jasniji, rapidni razvoj linuxa je njegova najveća mana za adopciju kod širokih masa. Čak i kada kernel ekipa brine o driverima, kocka je da li će ti sve raditi na idućem updateu. Neusporedivo gori primjeri su grafički driveri gdje je potrebno imati čitavi grafički stack od kernela pa na dalje istim gcc-om kompilirano i međusobno kompatibilno u nadi da će ti sve raditi. To je sve puno pre nestabilno i previše riskantno za mase.
Pa upravo je to osnovna Linux ideja, da su zatvoreni moduli zabranjeni u kernelu i da su driveri sastavni dio kernel spacea tako da se lakše pokrpaju i da budu sigurniji. Znači, Linux kernel je utopija, jer u okrutnom svijetu tamo vani većina ljudi zatvara svoj softver. Odličan primjer mi je
Myths, lies and truths about the Linux kernel od GKH i primjer nadogradnje USB drivera:
Here's an example that shows how this all works. The Linux USB code has been rewritten at least three times. We've done this over time in order to handle things that we didn't originally need to handle, like high speed devices, and just because we learned the problems of our first design, and to fix bugs and security issues. Each time we made changes in our api, we updated all of the kernel drivers that used the apis, so nothing would break. And we deleted the old functions as they were no longer needed, and did things wrong. Because of this, Linux now has the fastest USB bus speeds when you test out all of the different operating systems. We max out the hardware as fast as it can go, and you can do this from simple userspace programs, no fancy kernel driver work is needed.
Now Windows has also rewritten their USB stack at least 3 times, with Vista, it might be 4 times, I haven't taken a look at it yet. But each time they did a rework, and added new functions and fixed up older ones, they had to keep the old api functions around, as they have taken the stance that they can not break backward compatibility due to their stable API viewpoint. They also don't have access to the code in all of the different drivers, so they can't fix them up. So now the Windows core has all 3 sets of API functions in it, as they can't delete things. That means they maintain the old functions, and have to keep them in memory all the time, and it takes up engineering time to handle all of this extra complexity. That's their business decision to do this, and that's fine, but with Linux, we didn't make that decision, and it helps us remain a lot smaller, more stable, and more secure.
And by secure, I really mean it. A lot of times a security problem will be found in one driver, or in one core part of the kernel, and the kernel developers fix it, and then go and fix it up in all other drivers that have the same problem. Then, when the fix is released, all users of all drivers are now secure. When other operating systems don't have all of the drivers in their tree, if they fix a security problem, it's up to the individual companies to update their drivers and fix the problem too. And that rarely happens. So people who buy the device, and then use the older driver that comes in the box with the device, which is insecure. This has happened a lot recently, and really shows how having a stable api can actually hurt end users, when the original goal was to help developers.
http://www.kroah.com/log/linux/ols_2006_keynote.html