abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

včera 19:33 | Zajímavý článek Marek Stopka | Komentářů: 2
včera 17:55 | Nová verze

Bylo oznámeno vydání nové verze 3.0.0 a krátce na to opravných verzí 3.0.1 a 3.0.2 nástroje mitmproxy určeného pro vytváření interaktivních MITM proxy pro HTTP a HTTPS komunikaci. Přehled novinek v příspěvku na blogu. Přispělo 56 vývojářů. Aktualizována byla také dokumentace [Hacker News].

Ladislav Hagara | Komentářů: 0
včera 01:11 | Nová verze

Byla vydána nová major verze 3.0 svobodného multiplatformního geografického informačního systému QGIS (Wikipedie). Její kódové jméno je Girona, dle názvu města, ve kterém proběhlo 15. setkání vývojářů QGISu. Přehled novinek i s náhledy a animacemi v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
23.2. 20:33 | Zajímavý článek

Nadace Raspberry Pi vydala sedmašedesáté číslo (pdf) anglicky psaného časopisu MagPi věnovanému Raspberry Pi a projektům postaveným na tomto jednodeskovém počítači a čtvrté číslo (pdf) časopisu pro kutily HackSpace věnovanému navíc 3D tisku, pájení, řezání nebo i elektronice a IoT.

Ladislav Hagara | Komentářů: 0
23.2. 18:33 | Komunita

Morevna Project, který stojí za řadou svobodného softwaru pro animátory (např. Synfig Studio, RenderChan nebo Papagayo-NG) a svobodnými (CC-BY-SA) animovanými filmy/komiksy Morevna (3. díl) a Pepper&Carrot: The Potion Contest (6. díl), sbírá do 1. března příspěvky na 4. díl svého animovaného filmu Morevna. Mezi odměnami přispěvatelům lze najít např. i videokurzy animace v Synfigu či Blenderu.

xHire | Komentářů: 0
23.2. 12:22 | Bezpečnostní upozornění

Ve středu vydaná "npm@next" verze 5.7.0 správce balíčků pro JavaScript npm (Wikipedie, Node Package Manager) přinesla řadě uživatelů Linuxu nečekanou nepříjemnost. V závislosti na způsobu instalace a ve spojení s příkazem sudo mohlo dojít ke změně vlastníka u systémových souborů, také například /. Chyba je opravena v před několika hodinami vydané verzi npm 5.7.1 [reddit].

Ladislav Hagara | Komentářů: 13
23.2. 10:00 | Nová verze

Byla vydána verze 10.5 open source alternativy GitHubu, tj. softwarového nástroje s webovým rozhraním umožňujícího spolupráci na zdrojových kódech, GitLab (Wikipedie). Představení nových vlastností v příspěvku na blogu. Zdůraznit lze integrovanou podporu Let's Encrypt.

Ladislav Hagara | Komentářů: 0
22.2. 12:33 | Komunita

Příspěvek na blogu Signalu (Wikipedie) informuje o založení neziskové nadace Signal Foundation, jež bude zastřešovat další vývoj tohoto svobodného bezpečného komunikátoru běžícího také na Linuxu (Signal Desktop). Brian Acton, spoluzakladatel WhatsAppu, věnoval nadaci 50 milionů dolarů [Hacker News].

Ladislav Hagara | Komentářů: 1
22.2. 05:55 | Zajímavý článek

Článek na Fedora Magazine krátce představuje programovací jazyk Rust a několik zajímavých v Rustu naprogramovaných terminálových aplikací. Jedná se o alternativu k příkazu grep ripgrep, moderní barevnou alternativu k příkazu ls exa, příkazem cloc inspirovaný tokei a zvířátko v terminálu ternimal.

Ladislav Hagara | Komentářů: 0
21.2. 23:55 | Zajímavý projekt

Byl spuštěn Humble Classics Return Bundle. Za vlastní cenu lze koupit hry Broken Sword 5 - The Serpent's Curse, Shadowrun Returns a Shadowrun: Dragonfall - Director's Cut. Při nadprůměrné platbě (aktuálně 8,48 $) také Shadowrun: Hong Kong - Extended Edition, Wasteland 2: Director's Cut - Standard Edition, Age of Wonders III a Xenonauts. Při platbě 15 $ a více lze získat navíc Torment: Tides of Numenera a Dreamfall Chapters: The Final Cut Edition.

Ladislav Hagara | Komentářů: 0
Který webový vyhledávač používáte nejčastěji?
 (2%)
 (28%)
 (62%)
 (2%)
 (3%)
 (0%)
 (1%)
 (1%)
Celkem 451 hlasů
 Komentářů: 35, poslední 21.2. 19:51
    Rozcestník

    Dotaz: Max. velikost virtuálni paměti včetně swapu v 32bit jádře

    14.12.2008 08:19 volvox | skóre: 16
    Max. velikost virtuálni paměti včetně swapu v 32bit jádře
    Přečteno: 579×

    Dobrý den,

    zajímalo by mě, jestli v 32bitovém jádře linuxu (bez podpory PAE) sdílí virtuální adresní prostor společně s RAM i swap. Tedy pokud bych měl konkrétně na takovém systému 2GB fyzické RAM a chtěl mít 4GB ve swapu, tak by

    1. po aktivování swapu by bylo dostupných 6GB virt. paměti (2GB RAM + 4GB swap)
    2. po aktivování swapu by byly dostupné pouze 4GB virt. paměti (2GB RAM + ~2GB swap)
    3. swap by se nepodařilo aktivovat
    4. něco jiného

    A pokud platí 1. varianta bych poprosil o krátké vysvětlení, jak je to možné, příp. odkaz na nějaký zdroj (hledal jsem, nenašel).

    Díky za odpověď

    Odpovědi

    14.12.2008 11:54 ivan
    Rozbalit Rozbalit vše Re: Max. velikost virtuálni paměti včetně swapu v 32bit jádře

    Co znamena pamet je pristupna? jako se ji muze naalokovat jeden proces, nebo ze je pristupna systemu(kernelu)?

     

    14.12.2008 12:06 volvox | skóre: 16
    Rozbalit Rozbalit vše Re: Max. velikost virtuálni paměti včetně swapu v 32bit jádře

    Myslel jsem tím, že bude dostupná kernelu, ne pro jeden proces, t.j. využitelná systémem.

    14.12.2008 13:38 Petr Šobáň | skóre: 79 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Max. velikost virtuálni paměti včetně swapu v 32bit jádře

    Ono záleží co tím vlastně myslíte - například CPU 386 dokáže fyzicky adresovat max 4G ram, adresa o šířce 32b ovšem vnitřně umí pracovat s adresou o 46b takže může adresovat 64TB virtuálního prostoru.

    Virtuální prostor 64TB je rozdělen na globální a lokální prostor který může mít max 32TB. A každý segement může být max 4GB.

    Takže s toho vypline že CPU může pracovat s 64TB virtuálního prostoru takže 4G ram + 4G swap = 8G virtuálního prostoru, ovšem program bude moci využít pouze max 4G a je jedno zda 2G budou v RAM a další 2G v swapu.

    To je po fyzické stránce, jak je to v kernelu zda dokáže využít 64TB virtuálního prostředí nevím.

    14.12.2008 14:05 luky
    Rozbalit Rozbalit vše Re: Max. velikost virtuálni paměti včetně swapu v 32bit jádře

    36 bitů, 64 GB.

    14.12.2008 15:15 volvox | skóre: 16
    Rozbalit Rozbalit vše Re: Max. velikost virtuálni paměti včetně swapu v 32bit jádře
    Díky za odpověď, měl jsem na mysli modernější procesory. Podle en.wikipedia.org/wiki/Virtual_memory se pro procesory 80386 implementuje virtuální paměť pomocí Segmented virtual memory, kdežto novější pomocí Paged virtual memory, kde to IMHO v tomto směru funguje jinak.
     
    Je mi jasný limit u jednoho procesu na 32 bitů i split tohoto adresního prostoru mezi kernel a samotný proces (defaultně 1:3). Co mi není jasné, je jak se tyto virtuální adresy převedou na fyzické (v MMU?), v případě že CPU podporuje také jen 32 bitů, pokud těch virtuálních bude víc (stejné virt. adresy z různých procesů).
    Že by tedy v kernelu byla ještě jedna vrstva a virt. adresy se nejprve převedly z 32b na 36b a teprve pak by kernel rozhodnul, které stránky hledat v RAM?
     
    No, asi ne nevyjadřuju moc přesně, proto i ta původní otázka, ale opravdu by mě zajímalo, pokud platí 1. možnost, jak to teda je.
     

     

    14.12.2008 17:32 luky
    Rozbalit Rozbalit vše Re: Max. velikost virtuálni paměti včetně swapu v 32bit jádře

    Všechno to máte přímo v tom odkazovaném článku.

    Existuje převodní tabulka pro mapování virtuálních adres na fyzické (Page tables) a převod provádí MMU automaticky (Dynamic address translation). A každý proces má tuto tabulku svoji a je jich ve hře víc, ale to už je jen technický detail. A nakonec je to samotné swapování (Paging), které v případě potřeby uvolňuje fyzickou paměť tím, že ji odkládá na disk a natahuje zpátky ty stránky, které jsou zrovna potřeba. To už dělá kernel sám. Takže jen čarujeme s obsahem a mapováním paměti (a obecně to platí vždycky bez ohledu na to kolik fyzické paměti a v kolika bitech spravujeme).

     

    15.12.2008 09:40 volvox | skóre: 16
    Rozbalit Rozbalit vše Re: Max. velikost virtuálni paměti včetně swapu v 32bit jádře

    Jde mi o trochu něco jiného, těch článku jsem četl víc (a nejen na wikipedii), ale zjevně mi něco pořád uniká.

    Chápu základní princip, že kernel dostane od procesu virtuální adresu (VA), zjistí přes MMU, jestli je v RAM,  a pokud ne, tak se jí snaží nalézt ve swapu.

    A teď o co mi není jasný. Pokud má každý proces vlastní 32 bitový adresní rozsah, nemůže přece kernel nezměněnou VA z tohoto adres. prostoru jen tak předat dál, protože stejná VA může být použita i jinými procesy, které se odkazují pod stejnou VA na jinou část fyz. paměti.

    Nebo ještě jinak - pokud má kernel přístup k více jak 4GB virtuální paměti, musí přeci zákonitě použít větší než 32b adresní prostor, ale potom si musí kernel sám držet informaci o tom, které stránky jsou v RAM (MMU zvládne jen 32b) a které jsou ve swapu (to je jen moje ničím nepodložená spekulace - nikde jsem na to při hledání nenarazil).

     

    15.12.2008 11:04 Petr Šobáň | skóre: 79 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Max. velikost virtuálni paměti včetně swapu v 32bit jádře

    Proč si neprohlédnete strukturu toho CPU 386 jak pracuje ? (Princip je stejný u všech CPU pouze u novějších jsou přidaná další rozšíření pro větší adresovaní více RAM optimalizace atd.....)

    O adresování RAM rozhoduje CPU který převádí virtuální adresu 46b na 32b fyzickou adresu a pokud se nenajde příslušná virtuální adresa v ram vyvolá se přerušení a potom řízení převezme kernel a musí něco z fyzické ram smazat a odněkud jinud (ze swapu) tam nahrát požadovanou část.

    15.12.2008 11:51 volvox | skóre: 16
    Rozbalit Rozbalit vše Re: Max. velikost virtuálni paměti včetně swapu v 32bit jádře

    Máte pravdu, princip je stejný, původně mě zmátlo to výše zmíněné rozdělení na wikipedii.

    Co mi nebylo jasné a nemohl jsem najít, že se při každém přepnutí procesu v kernelu (task switch) nastaví registr CR3 (en.wikipedia.org/wiki/Control_register#CR3), který obsahuje ukazatel na Page Directory (to jsou přesně ty bity, které mi tam pořád chyběly), takže se už pak jednodušše dohledá fyz. adresa.

    Nakonec jsem objevil skvělý článek (byť asi staršího data), který mi v tom udělal konečně jasno - www.embedded.com/98/9806fe2.htm a také www.ibm.com/developerworks/linux/library/l-memmod/

    Je pravda, že když jsem pokládal původní otázku, tak jsem o tom nic nevěděl, a trochu naivně očekával srozumitelnou odpověď jednou větou ;)

    14.12.2008 14:15 luky
    Rozbalit Rozbalit vše Re: Max. velikost virtuálni paměti včetně swapu v 32bit jádře

    Virtuální pamět nepůjde přes 4GB, ale každý proces má vlastní adresní prostor (tedy každý své 4G virtuální paměti), takže swapák může kompenzovat paměť i přes 4G.

    Virtuální pamět kernelu je omezena na 1G (případně 2G) a není pro každý proces zvlášť, takže ani fyzicky nepůjde přes ten 1G. Ani není swapovatelná (AFAIK), ale odswapováni jiné části paměti by mělo kernelu v rámci toho 1G v případě nutnosti prospívat (nevím jak a jestli vůbec to Linux řeší).

    Možná se někde mýlím, ale shrnul bych to tak, že každopádně můžete jít přes celkovou hodnotu 4G. Ale pochopitelně raději tu RAMku než swap :-)

     

    14.12.2008 15:18 volvox | skóre: 16
    Rozbalit Rozbalit vše Re: Max. velikost virtuálni paměti včetně swapu v 32bit jádře

    Taky díky, odpoveď viz výše. 

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.