『壹』 什麼是邏輯地址什麼是物理地址它們之間有什麼關系
邏輯地址(LogicalAddress)是指由程序產生的與段相關的偏移地址部分。有時我們也把邏輯地址稱為虛擬地址
物理地址(Physical Address) 是指出現在CPU外部地址匯流排上的定址物理內存的地址信號,是地址變換的最終結果地址。如果啟用了分頁機制,那麼線性地址會使用頁目錄和頁表中的項變換成物理地址。如果沒有啟用分頁機制,那麼線性地址就直接成為物理地址了。
二者的關系如下:
只有在Intel實模式下,邏輯地址才和物理地址相等(因為實模式沒有分段或分頁機制,Cpu不進行自動地址轉換);邏輯也就是在Intel 保護模式下程序執行代碼段限長內的偏移地址(假定代碼段、數據段如果完全一樣)。應用程序員僅需與邏輯地址打交道,而分段和分頁機制對您來說是完全透明的,僅由系統編程人員涉及。應用程序員雖然自己可以直接操作內存,那也只能在操作系統給你分配的內存段操作。
邏輯地址與物理地址的「差距」是0xC0000000,是由於虛擬地址->線性地址->物理地址映射正好差這個值。這個值是由操作系統指定的。
『貳』 什麼是邏輯地址,什麼是物理地址,它們之間有什麼關系
邏輯地址: 是指由程序產生的與段相關的偏移地址部分。又稱絕對地址
物理地址:在存儲器里以位元組為單位存儲信息,為正確地存放或取得信息,每一個位元組單元給以一個唯一的存儲器地址,稱為物理地址,又叫實際地址或絕對地址。
二者關系:
邏輯地址和物理地址相對的。物理地址是唯一的,邏輯地址的相對的。
『叄』 為什麼要進行邏輯地址與物理地址的轉換工作
這個跟互聯網的分層有關系,我拿「 OSI 七層網路模型「和 」TCP/IP 四層網路模型」為例。
至於最基本的理論基礎「 OSI 七層網路模型「和 」TCP/IP 四層網路模型」我不贅述了,你可以事先熟悉一下,還有為什麼要分層你也得了解一下。總之,你要對互聯網實現端到端的通信解決方案有所認識。
正題:
你問的問題,具體牽扯到第三層網路層【定址】的實現,你可以理解為網路定位。
那麼為什麼MAC地址(物理地址)48bit已經是全球唯一了,還要多出來一套邏輯地址?
因為,MAC地址雖然唯一,但分布無序,每個設備(路由器,PC等具有MAC地址的通訊節點)都有MAC地址,但是設備並沒有按照一定的結構和次序去進行地理布局。兩個MAC連號的設備可能一個在美洲,一個在亞洲。
如果路枯賣由器要實現全局的定址定位的話,很可能他的路由表有2的40次方到48次方個條目,也就是MAC地址所涵蓋的2的48次方個地址,這已經是天文數字了。
可想而知,這是不可能實現的,沒有那麼大的內存和cpu去維持這么龐大的路由表,並且路由器之間的路由信息交換所消耗的帶寬也是天文數字,還有路由的收斂等等也成問題,那就實現不了你網路建設的目的了。
這樣,如果我有一套經過認真計劃的地址分配方案,由同一權威的機構,依據地理位置,需求等等進行另外一種定址標示的分配,也就是邏輯地址的分配,就可以避免以上的問題,更充分的利用互聯網,提高其效率。(分配機構如:IANA,地區級的INTERNET注冊機構(IR),本地級的IR。你可以了解一下)
你再想想IPv4的定址你就明白了,在骨幹路由器上你可能看到10.x.x.x/xx的路由匯總來自美洲等等經過規劃的安排。這樣是不是很有效率呢?
其實IPv4的分址方案也有其弊端,這就是IPv6誕生的原因
具體你可以在網上搜「ipv4 ipv6」
PS 其實有一些路由器的本分許可權是公開的,你可以登錄到一些骨幹路由器上看一看他們的路由表,如果你知道一點簡單的命令的話。
你可以在網上搜「可通過Telnet直接訪問的公開路由伺服器」一文,上面有具體的地址,通過telnet可以登陸上去。(如果你不知道telnet的話,可以卜敗祥。。。你懂的)
我估計你可能是網路初學者,你這樣多學型搏多問多實踐會提高很快的。
有很多知識是關聯的,不要因為有一兩個你不懂就知難而退,各個擊破就好了。然後要抓住脈絡,框架不要丟。
在網路模型這一塊,理解模型互聯網通信的解決方案的目的很重要,要明白動機,才能理解行為。
『肆』 為什麼要進行邏輯地址到物理地址的轉換
邏輯地址嘛畢竟還是可以偽裝、出錯的,但是物理地址都是唯一的
『伍』 為什麼要把進程的地址空間分為邏輯地址空間和物理地址空間
首先要知道邏輯地址和物理地址的區別,這一點可以在網上搜一下或參考匯編語言的基本概念。
簡單來說,使用邏輯地址的最主要原因是方便程序更合理地使用悔仿內存空間。比方說,物理空間就像許多小房間,由硬體決定了房間衫判序或前改號,1,2,3,4....但沒有將它們劃分成更靈活使用的地區號-小區名-樓號-樓層號-房間號,使用起來並不是很方便。邏輯地址就是為了進程更有效更方便地分配這些房間,人為地對空間進行了劃分。
『陸』 程序運行時,為什麼要將邏輯地址轉換成物理地址
同一物理地址的邏輯地址是不唯一的。cpu執行程序時,是按確定的的物理地址去取程序代碼的。
『柒』 為什麼要進行邏輯地址到物理地址的轉換
就像找人一樣,我們的名字就是邏輯地址,當一個人知道我們的名字時,他並不知道我握者們長什麼樣,蠢圓無法再一群人中找到這個人,當我們知帶皮塌道這個人臉上長了超級大的鼻子(也就是物理地址),我們就能找到這個人了
『捌』 程序運行時為什麼要將指令的邏輯地址轉換成物理地址
便於計算機查詢
『玖』 什麼是邏輯地址什麼是物理地址它們之間有什麼關系各用在何處
邏輯地址在工具書中的解釋
:
1、在有地址變換功能的計算機中,訪內指令給出的地址
(操作數)
叫邏輯地址,也叫相對地址。要經過定址方式的計算或變換才得到內存儲器中的物理地址。
2、把用戶程序中使用的地址稱為相對地址即邏輯地址。
網卡物理地址存儲器中存儲單元對應實際地址稱物理地址,與邏輯地址相對應。
網路中的地址分為物理地址和邏輯地址兩類,與網路層的IP地址傳輸層的埠號以及應用層的用戶名相比較,區域網的MAC層地址是由硬體來處理的,叫做物理地址或硬體地址。IP地址傳輸層的埠號以及應用層的用戶名是邏輯地址由軟體來處理。MAC地址不等同於物理地址.
大多數區域網通過為網卡分配一個硬體地址來標識一個聯網的計算機或其他設備.所謂物理地址是指固化在網卡EPROM中的地址,這個地址應該保證在全網是唯一的。IEEE注冊委員會為每一個生產廠商分配物理地址的前三位元組,即公司標識。後面三位元組由廠商自行分配,一個廠商獲得一個前三位元組的地址可以生產的網卡數量是16777216塊。而一塊網卡對應一個物理地址。也就是說對應物理地址的前三位元組就可以知道他的生產廠商。
例如固化在網卡中的地址為002514895423,那麼這塊網卡插到主機A中,主機A的物理地址就是002514895423,不管主機A是連接在區域網1上還是在區域網2上,也不管這台計算機移到什麼位置,主機A的物理地址就是002514895423。它是不變的,而且不會和世界上任何一台計算機相同。當主機A發送一幀時,網卡執行發送程序時,直接將這個地址作為源地址寫入該幀。當主機A接收一幀時,直接將這個地址與接收幀目的地址比較,以決定是否接收。物理地址一般記作00-25-14-89-54-23(主機A的地址是002514895423)。
『拾』 作業題:有了物理地址,為什麼還要邏輯地址誰能講的通俗一點
物理地址就是MAC地址,是網卡上自帶的,唯一的地址,邏輯地址就是IP地址閉帆,是虛擬的,實際不存在的,它在網路中用來定燃羨義不同的網路,使其不會發生數據混亂.通俗的講,電腦識別的是邏輯地址轎段雹(ip地址)而不是你的MAC地址,所以有了物理地址,還需要邏輯地址。