Article View: fr.comp.lang.c
Article #15182Modele large du x86-64 [Fut: rot13, conjugaison et autres ...]
From: Antoine Leca
Date: Tue, 04 Oct 2005 12:42
Date: Tue, 04 Oct 2005 12:42
51 lines
4785 bytes
4785 bytes
En <news:pxbfyrh5ycs.fsf@news.bourguet.org>, Jean-Marc Bourguet va escriure: > "Antoine Leca" <root@localhost.invalid> writes: > >> (le mod�le 'large', plus de 2 Go de _code_, est pour moi un >> escogriffe uniquement destin� aux chercheurs, mais bon, il faut se >> pr�parer � tout...) > > Un interet possible de plus de 2 Go de code est de mapper les > bibliotheques partagees a une meme adresse dans tous les processus. Non non, c'est une limite � 2 Go de code pour _un_seul_ "shared object" ou DLL ou application (je vais dire module, mais ce n'est pas le mot courant). Il est �vident que l'on peut � facilement � atteindre 2 Go de code en empilant les � biblioth�ques d'objets � de diverse provenance ; mais il n'y a pas de souci d'impl�mentation � ce niveau, les pointeurs vers les fonctions des autres modules �tant des pointeurs 64 bits (dans les GOT en mod�le *nix, dans les .idata en mod�le PE-COFF/Microsoft). Le souci, c'est un probl�me d'architecture au niveau des modes d'adressage : il n'y a pas ou tr�s peu de modes d'adressage direct sur 64 bits (pour �viter de tra�ner syst�matiquement des pellet�es de 0), donc c'est difficile d'avoir pour un module � manipuler d'un seul tenant de tr�s grandes quantit�s. En g�n�ral on utilise des d�placements sur 32 bits autour d'un point d�fini (rIP pour le code, rBX pour les donn�es), ce qui limite � 2 Go pour le code et normalement 4 Go pour les donn�es, c'est ce que l'on appelle le mod�le 'small'. Pour les donn�es on voit assez bien que certains (Fortran) peuvent avoir � manipuler dans le m�me module des blocs de donn�es (d�finies, _pas_ allou�es) de plus de 4 Go, donc il existe un mod�le 'm�dium' o� les donn�es sont acc�d�es syst�matiquement � travers un d�placement sur 64 bits autour du point fixe : cela rajoute (comme avec les machines RISC) la n�cessit� de charger d'abord le d�placement dans un registre d'index, puis ensuite de faire un adressage base+index�, mais ce n'est pas la mort. Par contre, pour en faire autant avec du code, on a plus de mal � saisir l'int�r�t. Enfin, j'ai plus de mal. > Je ne sais pas comment les gens sensibles a la securite le > prendraient :-) Bien, je suppose : ne pas avoir � faire de fixups me para�t �tre une source de s�curit�, par rapport aux autres solutions du genre � on est oblig� dans rtld.so de devoir parfois modifier les .text, donc de devoir d�prot�ger la r�gion, donc rtld.so est suid-root... mais il n'y a pas de probl�me. � ;-) Antoine
Technical Details
Message-ID:
<dhttc5$nn2$1@shakotay.alphanet.ch>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news4.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!newscon06.news.prodigy.com!newscon02.news.prodigy.com!prodigy.net!nx02.iad01.newshosting.com!newshosting.com!newsfeed.icl.net!newsfeed.fjserv.net!news-lond.gip.net!news.gsl.net!gip.net!colt.net!easynet-quince!easynet.net!oleane.net!oleane!freenix!news.alphanet.ch!alphanet.ch!not-for-mailReferences:
<1126342327.583568.21420@g43g2000cwa.googlegroups.com> <4329e5d4$0$7846$8fcfb975@news.wanadoo.fr> <dge4b6$fqa$1@reader1.imaginet.fr> <432ab809$0$1734$8fcfb975@news.wanadoo.fr> <mn.84b07d59016a857b.31483@laposte.net> <433f16ac$0$27406$8fcfb975@news.wanadoo.fr> <mn.10907d5a55119e84.15512@YOURBRAnoos.fr> <433f9cb1$0$7821$8fcfb975@news.wanadoo.fr> <mn.128c7d5aa5238de0.15512@YOURBRAnoos.fr> <43403203$0$5388$8fcfb975@news.wanadoo.fr> <43403d27$0$306$7a628cd7@news.club-internet.fr> <dhq3bs$dbc$1@reader1.imaginet.fr> <4340d2c9$0$27410$8fcfb975@news.wanadoo.fr> <dhqk2i$g6k$1@reader1.imaginet.fr> <dhth6r$v3u$1@shakotay.alphanet.ch> <43424a17$0$301$7a628cd7@news.club-internet.fr> <dhtl00$l4k$1@shakotay.alphanet.ch> <pxbfyrh5ycs.fsf@news.bourguet.org>Show Full Headers
Complete Article Headers
X-Google-Thread: f9822,b21b26167a936e28 X-Google-Attributes: gidf9822,public X-Google-Language: FRENCH,ASCII Path: arc1-ca.pugleaf.net!g2news1.google.com!news4.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!newscon06.news.prodigy.com!newscon02.news.prodigy.com!prodigy.net!nx02.iad01.newshosting.com!newshosting.com!newsfeed.icl.net!newsfeed.fjserv.net!news-lond.gip.net!news.gsl.net!gip.net!colt.net!easynet-quince!easynet.net!oleane.net!oleane!freenix!news.alphanet.ch!alphanet.ch!not-for-mail From: "Antoine Leca" <root@localhost.invalid> Newsgroups: fr.comp.lang.c Subject: Modele large du x86-64 [Fut: rot13, conjugaison et autres ...] Date: Tue, 4 Oct 2005 14:42:43 +0200 Organization: Posted through ALPHANET (http://www.alphanet.ch/) Lines: 52 Sender: antoinel@143.red-217-127-250.staticip.rima-tde.net Message-ID: <dhttc5$nn2$1@shakotay.alphanet.ch> References: <1126342327.583568.21420@g43g2000cwa.googlegroups.com> <4329e5d4$0$7846$8fcfb975@news.wanadoo.fr> <dge4b6$fqa$1@reader1.imaginet.fr> <432ab809$0$1734$8fcfb975@news.wanadoo.fr> <mn.84b07d59016a857b.31483@laposte.net> <433f16ac$0$27406$8fcfb975@news.wanadoo.fr> <mn.10907d5a55119e84.15512@YOURBRAnoos.fr> <433f9cb1$0$7821$8fcfb975@news.wanadoo.fr> <mn.128c7d5aa5238de0.15512@YOURBRAnoos.fr> <43403203$0$5388$8fcfb975@news.wanadoo.fr> <43403d27$0$306$7a628cd7@news.club-internet.fr> <dhq3bs$dbc$1@reader1.imaginet.fr> <4340d2c9$0$27410$8fcfb975@news.wanadoo.fr> <dhqk2i$g6k$1@reader1.imaginet.fr> <dhth6r$v3u$1@shakotay.alphanet.ch> <43424a17$0$301$7a628cd7@news.club-internet.fr> <dhtl00$l4k$1@shakotay.alphanet.ch> <pxbfyrh5ycs.fsf@news.bourguet.org> NNTP-Posting-Host: 143.red-217-127-250.staticip.rima-tde.net Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Trace: shakotay.alphanet.ch 1128429766 24290 217.127.250.143 (4 Oct 2005 12:42:46 GMT) X-Complaints-To: usenet@alphanet.ch NNTP-Posting-Date: Tue, 4 Oct 2005 12:42:46 +0000 (UTC) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2800.1506 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1506