🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.os.linux.programowanie
Article #72726

Re: zero user space Data Segment (DS)

#72726
From: Bogdan (bogdro)
Date: Mon, 29 Dec 2014 17:24
34 lines
2660 bytes
W dniu 28.12.2014 o 17:23, porparek@gmail.com pisze:
> Witajcie
> 
> Zawsze myslalem ze rejestr procesora DS w linuxie jest zawsze niezerowy.
> Ostatnio wyswietlilem zawartosc tego rejestru w GDB i okazalo sie ze rowna sie on 0. Sprawdzalem to w kilku prostych programach (w przestrzeni uzytkownika) i zawsze rowna sie on 0.
> 
> Czy oznacza to ze w jakis sposob segmantacja nie jest wykorzystywana podczas dostepu do danych.
> 
> Dla odmiany rejestry CS oraz SS zawieraja sensowne wartosci.
> 
> dziekuje za informacje
> 

 Witam.

 Jaki jest tryb pracy procesora? "Ilu-bitowy" system?
 W trybie chronionym rejestry już nie mają tej samej roli, co np. w
DOS-ie. Są selektorami (indeksami) do tablic deskryptorów LDT lub GDT
i zero jako indeks (czyli pierwszy wpis w GDT/LDT) jest jak
najbardziej sensowne, jeśli dobrze pamiętam (pomijając poziom uprawnień).
 Natomiast w trybie 64-bitowym procesor traktuje rejestry segmentowe
tak, jakby zawierały zero.
 Jakie to "sensowne wartości" są w CS i SS? Spodziewałbym się, że np.
DS=3 (lub 7), ale sam debugger też może mieć tu coś do powiedzenia.
 U mnie, na 32-bitowym systemie, program w userspace raportuje, że
DS=123 (konkretnie to DS % 256 = 123). I pod debugerem, i sam.
 Spodziewałbym się zera w DS w trybie 64-bitowym lub w kodzie jądra
(lub sterownika).

-- 
Pozdrawiam/Regards - Bogdan                     (GNU/Linux & FreeDOS)
Kurs asemblera x86 (DOS, GNU/Linux):            http://bogdro.ciki.me
Grupy dyskusyjne o asm:  pl.comp.lang.asm alt.pl.asm alt.pl.asm.win32
www.Xiph.org www.TorProject.org  Soft(EN): http://bogdro.ciki.me/soft
Technical Details
Message-ID: <54a18e52$0$2160$65785112@news.neostrada.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!goblin1!goblin.stu.neva.ru!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-b-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
References: <74b1fc96-ae2d-4034-9d3b-e62abfb891d3@googlegroups.com>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!goblin1!goblin.stu.neva.ru!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-b-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
Date: Mon, 29 Dec 2014 18:24:33 +0100
From: "Bogdan (bogdro)" <bogdan@poczta.gazeta.pl>
User-Agent: Mozilla/5.0 (X11; Linux i686; rv:31.0) Gecko/20100101 Thunderbird/31.3.0
MIME-Version: 1.0
Newsgroups: pl.comp.os.linux.programowanie
Subject: Re: zero user space Data Segment (DS)
References: <74b1fc96-ae2d-4034-9d3b-e62abfb891d3@googlegroups.com>
In-Reply-To: <74b1fc96-ae2d-4034-9d3b-e62abfb891d3@googlegroups.com>
Lines: 34
Message-ID: <54a18e52$0$2160$65785112@news.neostrada.pl>
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 89-69-220-237.dynamic.chello.pl
X-Trace: 1419873875 unt-rea-b-01.news.neostrada.pl 2160 89.69.220.237:2614
X-Complaints-To: abuse@news.neostrada.pl
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit