( persicsb | 2016. 02. 15., h – 15:21 )

"A logikadat kovetve, az OpenGL -nek nem kene szamottevo userland reszenek lenie,
ill. nem kene lati tudnod a binarist amit futat a GPU..."
Kevered a userlandet meg a hardverabsztrakciót. OpenGL esetén pontosan kevés helyen (sőt, sehol) sincs meg az, hogy te pontosan milyen szközön futsz, viszont van API arra, hogy az eszköz lehetőségeit lekérdezd. Elabsztrahálja előled azt, hogy ez egy NVidai Quattro vagy egy Intel GMA vagy éppen egy AMD. Cserébe le tudom kérdezni azt, hogy az adott eszköz mire képes.
Hasonló példa: Javascriptben sem kell tudnom, mi a user agent (azaz nem user agent stringet parzolok), hanem megnézem, milyen API-k elérhetőek.
Ez jó absztrakció, hiszen elrejti a konkrét platformot, de platform képességeit le tudja írni a felhasználó felé.

Miért is kéne látnom, hogy milyen binárist futtat a GPU? Az a GPU-ra tartozik, senki másra. Ugyanúgy, ahogy nem látom a relokált, ASLR-erezett binárist sem, amit a CPU futtat, és ez így van jól.

"/sys: kernel interface a userland szamara."
Nem. A /sys filerendszer hardvereszközök infóit is kiengedi a userland számára, device driverek adatait manipulálhatod vele. Egyáltalán NEM rejti el a platformot. Ez hatalmas hiba.

"Linux-on eleg nehez osszebanyaszi doksikat arrol, hogy hogyan is kene a kernelel beszelgetni
user oldalrol :(."
Csak és kizárólag a man(2) kell, hogy erre szolgáljon, nem a különféle sysfs leírások stb. Hiszen az a kernel API a userland felé. És nem hw-specifikus API kell, hanem a rendszer képességeinek (például van hőmérsékletszenzor benne, GPS szenzor benne stb) leírása kell API szinten.
Nem pedig az, hogy van egy STMicroelentronics STM213235345FOOBAR chip benne, amiből a 0xCFAB regiszterből kiolvasva kapunk egy valamilyen értéket. Kit érdekel? Nézd meg, az Android ezt meg tudja oldani szenzorfüggetlenül. Sokkal jobb a programozói API-ja, mint a bare Linuxnak, kell is rajta sokat dolgozni Google oldaláról. Nem véletlenül találtak ki ők maguknak saját Camera HAL-t, Input Device HAL-t, stb. A Linux HAL egyszerűen nem jó.