-
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.comp.programming
Subject: GC z uzyciem SLAT
Date: Tue, 7 Jun 2016 22:34:05 +0200
Organization: ATMAN - ATM S.A.
Lines: 48
Message-ID: <nj7b48$1in$1@node2.news.atman.pl>
NNTP-Posting-Host: 176-115-85-233.via.zamek.net.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: node2.news.atman.pl 1465331656 1623 176.115.85.233 (7 Jun 2016 20:34:16 GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Tue, 7 Jun 2016 20:34:16 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows NT 6.0; WOW64; rv:45.0) Gecko/20100101
Thunderbird/45.1.1
X-Mozilla-News-Host: news://news.atman.pl:119
Xref: news-archive.icm.edu.pl pl.comp.programming:209455
[ ukryj nagłówki ]Cześć.
Taka ciekawostka:
http://www.scs.stanford.edu/~dm/home/papers/belay:du
ne.pdf
Mozna tam doczytać o tym że wykorzystując cechy cpu takie jak pagetables
można przyspieszyć GC (acz dokumenty na które się powołuja jakoś
niespecjalnie są o tym ;).
OK, moje pytanie jest nieco z boku. Wyobraźmy sobie że chcemy napisać
bardzo prosty Hypervisior którego jedynym zadaniem jest zarzadzanie
pamięcią w taki sposób:
fizyczna -> wirtualna -> wirtualna#2
Współcześnie dostepne sa mechanizmy SLAT[1] na procesorach Intela i AMD
które de facto pozwalają wirtualizować wirtualną pamięć. Potrzebne to do
dużych hypervisorów.
A moje pytanie jest następujące: czy ktoś wie czy mozna wykorzystać SLAT
będąc zwykłym procesem w przestrzeni usera do wirtualizacji *własnej*
pamięci? Wyobrażam sobie to tak że mój proces startuje, hypervisor
dostarcza hyper_alloc, hyper_free i od tej pory reszta kodu korzystając
z nich przechodzi przez SLAT.
Cele sa dwa:
a) coś na kształt natychmiastowego GC w osobnym watku (hypervisor
zabiera pamięć, deallokuje ją w systemie asynchronicznie jednocześnie
zapewniając natychmiastowy czysty page z innego miejsca)
b) save/restore - skoro mam kontrolę nad adresami pamięci virtualna#2 to
w zasadzie możliwe bylo by zapisanie tej pamięci ze wskaźnikami a
nastepnie odczytanie w inne miejsce (randomizm allokacji systemu
operacyjnego) i przekonfigurowanie SLAT aby stały się znowu walidne.
Czytam o SLAT i jest malo informacji. Ponieważ Win8 ma wbudowany
hypervisor który wymaga SLAT i jakoś jest obsługiwany to pewnie to jest
możliwe. Jednak podstawowe pytanie brzmi: czy program w userspace może
używać SLAT bez sterowników, trybów administratora itp?
PS. Tak, wiem że nie da się przekazywać pointerów z virtualna#2 do api
systemu operacyjnego ale tak się sklada że algorytm (czysto
obliczeniowy) mieli wyłacznie pamięć i plik (którego interfejs do r/w
zapewnia mój hypervisor). Ewentualnie czy ktoś zna jakieś źrodło
informacji o SLAT z poziomu pisania hypervisorów :) ?
[1] https://en.wikipedia.org/wiki/Second_Level_Address_T
ranslation
Najnowsze wątki z tej grupy
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
- Press Release - AEiC 2023, Ada-Europe Reliable Softw. Technol.
- Ada-Europe - AEiC 2023 early registration deadline approaching
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2023
- Ile cykli zajmuje mnożenie liczb 64-bitowych?
- Ideologia Polskiego Programisty wer.3
Najnowsze wątki
- 2024-05-03 Warszawa => Sprzedawca usług rekrutacyjnych <=
- 2024-05-03 Warszawa => Mid/Senior QA Engineer <=
- 2024-05-03 Warszawa => Mid/Senior QA Engineer <=
- 2024-05-03 Warszawa => Senior PHP Developer (Symfony) <=
- 2024-05-03 Rzeszów => UX/UI Designer <=
- 2024-05-03 Giertych przetarł szlak: byli członkowie zarządu Orlenu śledztwa prokuratorskie obserwują z zagranicy
- 2024-05-03 Warszawa => Senior Rust Software Engineer <=
- 2024-05-03 Kraków => UX/UI Designer <=
- 2024-05-03 Warszawa => International freight forwarder <=
- 2024-05-02 Silnik Stirlinga - energia mechaniczna wytwarzana z ciepła bez dostarczania paliwa!
- 2024-05-02 Kraków => Senior .Net Programmer <=
- 2024-05-02 Sprowadzenie pożaru zagrażającego mieniu w wielkich rozmiarch
- 2024-05-02 Zielona Góra => Spedytor międzynarodowy <=
- 2024-05-02 Katowice => Performance Analyst <=
- 2024-05-02 Gdańsk => Full Stack web developer (obszar .Net Core, Angular6+) <=