-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.P
OSTED!not-for-mail
From: Sebastian Biały <h...@p...onet.pl>
Newsgroups: pl.misc.telefonia.gsm
Subject: Re: W teście szybkości iPhone6s+puszcza z dymem Galaxy Note 5
Date: Mon, 16 Nov 2015 21:05:32 +0100
Organization: ATMAN - ATM S.A.
Lines: 71
Message-ID: <n2dcv5$k5r$1@node1.news.atman.pl>
References: <n27hfb$rlr$1@dont-email.me> <n27jer$old$1@node2.news.atman.pl>
<X...@1...0.0.1>
<n27qgt$rk$1@dont-email.me> <n27s62$14m$1@node2.news.atman.pl>
<n27sgj$9ca$1@dont-email.me> <n27tkq$2mq$1@node2.news.atman.pl>
<a...@n...neostrada.pl>
<n29if0$ihn$2@node2.news.atman.pl> <n29uql$hsj$1@dont-email.me>
<n2a15q$17n$1@node2.news.atman.pl>
<a...@n...neostrada.pl>
<n2a5mc$5i0$1@node2.news.atman.pl>
<1t0380f7adygx$.mhqilt61aps8$.dlg@40tude.net>
<n2d563$2aa$1@node2.news.atman.pl>
<564a330f$0$701$65785112@news.neostrada.pl>
NNTP-Posting-Host: 176-115-85-233.via.zamek.net.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-2; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: node1.news.atman.pl 1447704357 20667 176.115.85.233 (16 Nov 2015 20:05:57
GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Mon, 16 Nov 2015 20:05:57 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows NT 6.0; rv:38.0) Gecko/20100101 Thunderbird/38.3.0
In-Reply-To: <564a330f$0$701$65785112@news.neostrada.pl>
Xref: news-archive.icm.edu.pl pl.misc.telefonia.gsm:1073535
[ ukryj nagłówki ]On 2015-11-16 20:48, J.F. wrote:
>> Nieprawda że dłubanie po hardware wymaga jakiś mitycznych wysokich
>> uprawnień. Od wieków stosujemy IOMMU:
>> https://en.wikipedia.org/wiki/Input%E2%80%93output_m
emory_management_unit
> A dostepne w telefonach ?
CPU do telefonów potrafi zrobić Apple. Jaki problem dodać dowolny
hardware? Do ARMów w zasadzie nie trzeba - tam nie ma separowanej
magistrali IO wiec nie ma potrzeby kombinowania z IOMMU. Tym bardziej że
gfx jest de facto częścią wszystkich cpu stosowanych w mobile.
>> Pozwala to za *przyzwoleniem* kernela przemapować wszelą przestrzeń
>> adresową gfx dowolnemu procesowi i od tej pory może on sobie dlubać
>> wprost po rejestrach gfx. Na przykład procesowi sterownika karty grafiki.
>
> Czekaj czekaj - bo na ile rozumiem, to dziala odwrotnie - pozwala
> zwirtualizowac adresy uzywane przez urzadzenie IO, np gfx.
> Urzadzenie siega do pamieci pod adres np C2000000, a IOMMU podmienia mu
> go np na A8000000.
Działa w dwie strony ponieważ gfx zazwyczaj posiada pamięć sherowaną
pomiędzy hardware i cpu. Uzycie IOMMU i MMU pozwala widzieć pamięć gfx
czy czegotam chcesz bez żadnych "uprawnień kernela".
> Do rejestrow urzadzenia/gfx nadal trzeba sie dostawac, ale jesli to ARM,
> to nie ma wydzielonych instrukcji, sa mapowane do pamieci, i tu zwykle
> MMU/protekcja pamieci wystarczy.
Tak, jesli mamy procesor bez udziwnień to zwykłe MMU tez się może nadać.
Ponadto w cpu w mobile mogą być inne rozwiązania, np. gfx jest na stale
w jakimś obszarze pamięci fizycznej i już.
>>> Jeśli piszesz ekstremalnie szybki system operacyjny to możesz
>>> przydzielić wszystkim procesom uprawnienia i kazdy sobie może
>>> grzebać. Twój (kernela) wybór.
> No ale z reguly nie chcesz, bo ani te procesy nie wiedza jak tam
> grzebac, ani nie chca grzebac sie w szczegoly roznych GFX, a namieszac
> moga, jak zaczna ustawiac urzadzenie w sposob niezsynchronizowany z innymi.
Dlatego obcina się część wydajności rozbiąc silne separacje. Teraz
trzeba policzyć ile kosztuje switch miedzy procesami. Stawiam że prawie
nic w porównaniu z javascriptem na facebooku. Ponieważ procesy, przy
masowej komunikacji, najzwyczajniej w świecie sharują pamięć RAM. Więc
znowu, rola sterownika sprowadza się do inicjacji hardware.
> Ale mi chodzi o to, czy Dalvik w ogole przewiduje operacje np "zapisz
> pod adres C2000000 w pamieci".
Nie musi. Wystarczy że może (a musi) wołać metody natywne. I wtedy w
javie widzisz os.raw.memory.write( address, value ) czy coś w ten deseń.
> W pamieci rzeczywistej, albo wirtualnej ale procesora, a nie pamieci
> przewidzianej przez Dalvik dla procesu w javie.
Co to za różnica, MMU przemapowalo Ci hardwareowy zestaw rejestrów GFX
pod adres 0x123456 i sobie po nich smerasz. Sterownik wie co i gdzie
należy przemapować. Może to zgłosic na inicjacji.
> Tudziez np funkcje poproszenia kernela o odpowiednie zamapowanie tego
> C20000xxx.
Tak.
> Jeszcze jakies inne rozkazy zostaja, typu np zablokowanie przerwan,
> sterowanie nimi, operacje atomowe itp.
To wszystko to są trywializmy. Przecież nikt nie mówi że API/ABI
sterownika zaczyna się od main(argc,argv). naprawde, nie ma roznicy czy
porty hardware smerane sa przez kod maszynowy czy przez ten sam kod
maszynowy wygenerowany z dalvika.
Następne wpisy z tego wątku
- 16.11.15 21:08 Sebastian Biały
- 16.11.15 21:31 Ghost
- 16.11.15 21:48 J.F.
- 16.11.15 22:14 Sebastian Biały
- 16.11.15 22:36 Sebastian Biały
- 17.11.15 10:29 Marek
- 17.11.15 10:44 Marek
- 17.11.15 10:50 atm
- 17.11.15 11:02 atm
- 17.11.15 11:21 atm
- 17.11.15 11:34 atm
- 17.11.15 11:50 Marek
- 17.11.15 11:57 Marek
- 17.11.15 14:07 Pszemol
- 17.11.15 14:10 Pszemol
Najnowsze wątki z tej grupy
- Radio internetowe do starego Androida
- Nazbyt "muzyczne" słuchawki
- 5G Apokalipsa - nie tylko dla tutejszych przeżuwaczy podpiczników
- Power BANK z ładowaniem przelotowym robi PRZERWY
- Aero2
- odbiornik GPS z kablem USB
- iOS, działające wifi z autolockiem
- Z instrukcji do kitu
- Re: W telefonie brak szufladki na drugą kartę SIM
- W telefonie brak szufladki na drugą kartę SIM
- DNS restrictions are on
- Słabszy sygnał GSM od kilku tugodni
- Re: Tani dodatkowy sim do smartwacha
- Praktyczny test GPS...
- Re: UseGalileo -- PRODUKTY I APLIKACJE UŻYWAJĄ JUŻ DZIŚ SYSTEMU GALILEO
Najnowsze wątki
- 2025-02-19 Ogrodzenie dla krów szkockich "Highland"
- 2025-02-19 Gdańsk => System Architect (background deweloperski w Java) <=
- 2025-02-19 Gdańsk => Solution Architect (Java background) <=
- 2025-02-19 Białystok => Data Engineer (Tech Leader) <=
- 2025-02-19 Kraków => Ekspert IT (obszar systemów sieciowych) <=
- 2025-02-19 Warszawa => Architekt rozwiązań (doświadczenie w obszarze Java, AWS
- 2025-02-19 Rzeszów => International Freight Forwarder <=
- 2025-02-19 Poznań => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-02-19 Chrzanów => Spedytor Międzynarodowy (handel ładunkami/prowadzenie f
- 2025-02-19 Bieruń => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-02-19 Nigdy
- 2025-02-19 Katowice => Key Account Manager (ERP) <=
- 2025-02-19 Żerniki => Dyspozytor Międzynarodowy <=
- 2025-02-19 Łódź => NodeJS Developer <=
- 2025-02-19 Wow...