『壹』 如何將邏輯地址轉換成物理地址
邏輯地址如何轉換成物理地址
1.確定虛擬地址(物理地址)的有效位
例如:假設頁面大小1KB,共32頁。(頁面:邏輯地址 頁框:物理地址)
由32(KB)=32×1024(B) 即等於32×1024 位元組
二進制用多少位能有效表示這么多位元組呢——答是:15位 因為32×1024=2^5×2^10=2^15
2.再次確定邏輯地址頁面位數 你應該知道:邏輯地址=頁號+頁面
還是以上假設,那麼頁面大小為1KB=1024位元組 同樣的方法計算出表示位數:10位
如果給你邏輯地址:0000 1111 1000 0000
那麼由:011+11100000000(相當於 頁號+頁面(10位))推得出頁號011=3
3.根據頁號找出對應的頁框號
由 物理地址=頁框號×頁塊大小(頁塊大小是等於頁面大小的)+頁內位移(即頁面邏輯地址)
根據上面 物理地址=頁框號×1024B + 1110000000 ( 這里的相加是指位置上而言)
例如:110+110=110110(即高地址+低地址)
『貳』 通過虛擬地址計算物理地址 求過程
你打的太多了,有點亂,只說下地址轉換問題:
1.虛擬地址:虛擬地址是以"段寄存器:偏移地址"形式存在的,例如--0542:24521360
2.線性地址:它是由分段部件把虛擬地址轉化而來的.
3.物理地址:即真實存在的地址,由處理器的地址引腳尋找到的地址.
虛擬地址---->線性地址:
段寄存器是一個16位的寄存器,其中第0和1位控制著將要訪問段的特權級,第2位說明是在gdt還是ldt尋找地址.高13位作為一個索引值,總共8192個索引.假設段寄存器-0000
0000
0000
1011(000b),那麼我們可以知道rpl=3(特權級為3);ti=0,從gdt中選擇段描述符;index=1,即將要索引的段描述符在gdt中的順序號為1,由於一個段描述符佔8個位元組,所以其索引到的地址為"gdt的高32位+1*8".這也就是為什麼gdt48位,留最低的16位作為限長的原因(8192*8=64k).
找到了段描述符,然後就是從段描述符中找出該段的位置了.段描述符是個8位元組的內存空間,由於結構復雜,無法構圖,省略段描述符的結構.我們只要知道在裡面規定了該段的基址,限長,還有屬性等等.找出基址後,再加上虛擬地址的偏址,就形成了32位的線性地址.由於偏址是32位的,所以該段獨享4g的虛擬地址空間.
線性地址----->物理地址
該部分是由分頁部件通過3級查找完成的.此時,我們把線性地址分為3段:0-11位(c)位元組索引,12-21位(b)頁表索引,22-31位(a)頁目錄索引.我們把頁表描述符和頁描述符通稱為頁表項,頁表項佔4個位元組,總共佔4kb大小.先以cr3為基址,以(a*4)為索引值,定址頁目錄描述符.然後再以頁目錄地址的高20位地址為基址,以(b*4)為索引值,定址頁描述符.再以頁描述符的高20位地址為基址,以c為偏移地址,相加得到物理地址.
從上可以看到頁的大小是4kb,即一項任務cpu只調用該任務所佔內存空間的4kb大小.有利於減少內存佔用.
以上大體就是這樣的,其中分頁部件的轉換相當復雜,不是三言兩語就能說明白的.還有pentium之後,分頁部件又採用了4mb的頁面,線性地址採用2級定址.才開啟pae功能後,又形成了4級定址.然後再結合後面的內存保護,i/o保護,任務保護及特權級的變換,形成了保護模式的大部分內容.
太復雜了,我也不是十分會.寫的有些亂,但願你能明白些.
『叄』 請問怎麼虛擬出MAC地址
在桌面上的「網上鄰居」圖標上單擊右鍵,選擇「屬性」,在彈出的「網路連接」的對話框中,在「本地連接」圖標上單擊右鍵,選擇「屬性」,會彈出一個「本地連接屬性」的對話框,單擊「配置」按鈕,選擇「高級」。
選中左欄「屬性」中「Network Address」(其實,並非所有的網卡,對物理地址的描述都用「Network Address」,如Intel的網卡便用「Locally Administered Address」來描述,只要在右欄框中可以找到「值」這個選項就可以了)。
然後選中右欄框「值」中的上面一個單選項(非「不存在」),此時便可在右邊的框中輸入想改的網卡MAC地址,形式如「000B6AF6F4F9」。點擊「確定」按鈕,修改就完成了。
『肆』 怎樣將IP地址轉換為實際物理地址
將IP地址轉換為實際物理地址的方法
確定虛擬地址(物理地址)的有效位
例如:假設頁面大小1KB,共32頁。(頁面:邏輯地址 頁框:物理地址)
由32(KB)=32×1024(B) 即等於32×1024 位元組
二進制用多少位能有效表示這么多位元組呢——答是:15位 因為32×1024=2^5×2^10=2^15
2.再次確定邏輯地址頁面位數 你應該知道:邏輯地址=頁號+頁面
還是以上假設,那麼頁面大小為1KB=1024位元組 同樣的方法計算出表示位數:10位
如果給邏輯地址:0000 1111 1000 0000
那麼由:011+11100000000(相當於 頁號+頁面(10位))推得出頁號011=3
3.根據頁號找出對應的頁框號
由 物理地址=頁框號×頁塊大小(頁塊大小是等於頁面大小的)+頁內位移(即頁面邏輯地址)
根據上面 物理地址=頁框號×1024B + 1110000000 ( 這里的相加是指位置上而言)
例如:110+110=110110(即高地址+低地址)
地址解析協議(ARP)是在僅知道主機的IP地址時確定其物理地址的一種協議。TCP是一種面向連接(連接導向)的、可靠的、基於位元組流的運輸層(Transportlayer)通信協議。ICMP是Internet控制報文協議。它是TCP/IP協議族的一個子協議,用於在IP主機、路由器之間傳遞控制消息。控制消息是指網路通不通、主機是否可達、路由是否可用等網路本身的消息。這些控制消息雖然並不傳輸用戶數據,但是對於用戶數據的傳遞起著重要的作用。DNS是計算機域名系統的縮寫,它是由解析器以及域名伺服器組成的。域名伺服器是指保存有該網路中所有主機的域名和對應IP地址,並具有將域名轉換為IP地址功能的伺服器。
『伍』 win7虛擬地址轉換為物理地址
保護模式下虛擬地址轉物理地址,一般都是系統在做的,我還沒見過書上有講怎麼轉。一般書上講的都是實模式下轉的方法。
使用實模式下的匯編語言能夠做的事情是很有限的,當然你說的改數據。。。不太明白你是什麼意思,但是現在的系統都是在保護模式下的了,你在系統上運行的實模式的匯編語言,其實也只是系統模擬給你看的,本質上還是在保護模式下的。
當然如果你真正是將整個電腦進入了實模式,那你用匯編還是想改什麼改什麼,但是這樣做,你得先自己編寫引導,如果是要改文件數據,你還得在實模式下用匯編寫讀取和修改硬碟數據的代碼,這難度。。。有點大。。。你要是都會。。。應該可以直接去微軟應聘了。
『陸』 分頁,虛擬地址是怎麼轉換成物理地址的
虛擬地址(即圖中的邏輯地址)的高位表示頁號,由計算機硬體將頁號取出,且和頁表寄存器中的頁表始址一起送加法器,就可以得到該頁對應的頁表項的地址,根據此地址到內存讀出對應的塊號,最後將塊號和頁內地址拼接得到對應的物理地址。
『柒』 怎樣通過區域網模擬其他人的MAC地址
你好,為了防止IP和MAC欺騙,一般學校是利用IP加MAC加埠綁定認證上網,就你所說的,你們學校應該沒有進行埠綁定.所以別人可以冒用你的IP和MAC進行上網.這個你可以和你們的網路管理員說一下.
至於修改MAC,方法如下:打開"開始"---"控制面板"---"網路和internet連接"---"網路連接",在"本地連接"處用右鍵選擇屬性,打開對話框上面網卡的"配置",選擇"高級",在左邊選中"network address",這時候右邊就可以看到你的網卡物理地址.如果你選擇"不存在",在你那邊是不能上網的.而上邊的白色方框里你可以更改你的MAC地址.
『捌』 請問硬碟物理地址是怎麼轉換的!
這個我不熟
『玖』 怎麼設置虛擬ip地址
更改IP地址
廣域IP:
1、如果是PPOE上網只需斷開連接再重新連上就好了,伺服器會從IP地址池中隨機分配一個IP地址給你。
2、固定IP上網那你要找運營商更改了,這樣改是快不了的。
局域IP:
網路鄰居右鍵屬性,我的連接右鍵屬性,打開tcp/ip更改。
改網卡物理地址:
1、直接改:可以在桌面上的「網上鄰居」圖標上單擊右鍵,選擇「屬性」,在彈出的「網路連接」的對話框中,在「本地連接」圖標上單擊右鍵,選擇「屬性」,會彈出一個「本地連接屬性」的對話框,單擊「配置」按鈕,選擇「高級」,選中左欄「屬性」中「Network
Address」Intel的網卡便用「Locally
Administered
Address」來描述,只要在右欄框中可以找到「值」這個選項就可以了),然後選中右欄框「值」中的上面一個單選項(非「不存在」),此時便可在右邊的框中輸入想改的網卡MAC地址,形式如「000B6AF6F4F9」。點擊「確定」按鈕,修改就完成了。
2、修改注冊表:
第一步,單擊「開始」,選中「運行」,鍵入「regedit」調出注冊表。
第二步,在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}\0000、0001、0002
等主鍵下,查找
DriverDesc
,內容為要修改的網卡的描述,如Intel的網卡會被描述成「Intel(R)
PRO/100+
Management
Adapter」,3Com的網卡會被描述成「3Com
EtherLink
XL
10/100
PCI
For
Complete
PC
Management
NIC
(3C905C-TX)」等。