為什麼64位作業系統不能執行16位應用程式?

為什麼你的64位電腦不能執行舊的16位應用程式?下面是原因,再加上一些你可以使用的變通方法。...

一旦計算機開始使用現代的64位體系結構,使用者很快就意識到執行那些舊的16位應用程式是行不通的。為什麼64位機器不能執行16位應用程式?

16bit-apps-64bit-os

這個問題的答案可能會令人困惑,這取決於你問誰。首先,執行16位應用程式並非不可能。只是很難。其次,造成這種困難的原因在於CPU體系結構和作業系統。

困惑了嗎?別擔心,你並不孤單。但是當你讀完這篇文章的時候,你就不會再困惑了。

cpu體系結構的歷史

我知道,你最不想讀的是歷史課,對吧?別擔心,這個很短。理解為什麼64位系統不能以本機方式執行16位應用程式也很重要。

如果你生活在80年代和90年代,那麼你可能還記得那些當時所有人都認為是尖端技術的16位恐龍。

why 64-bit can't run 16-bit applicati***

當時,是的。那些舊機器在1978年執行英特爾8086處理器。處理器能夠使用16位定址訪問1Mb的地址空間。隨著早期的計算機執行64KB的記憶體,這是一個巨大的進步,並標誌著個人計算新時代的開始。

在這種模式下(稱為真實模式),一部分被保留給RAM,其餘的被BIOS和計算機硬體(如圖形卡)利用。

不久之後,80286處理器在CPU體系結構上又有了進一步的進步,能夠使用16位定址來定址16Mb。286體系結構帶來了“保護模式”,其特性不僅允許定址更多記憶體,還允許多工處理。在“真實模式”下執行舊的16位應用程式並不總是那麼容易,但這是可能的。

16位的結尾,有點。。。

1985年,英特爾推出了下一代處理器:英特爾386。這是英特爾的第一個CPU,它一次可以使用32位對記憶體進行定址,並且可以訪問高達4GB的可定址記憶體。當時,這對電腦使用者來說似乎是一個重大突破。PC遊戲即將進入鼎盛時期。

why 64-bit can't run 16-bit applicati***

隨著32位體系結構的出現,出現了保護模式的擴充套件版本,它不僅允許訪問更多記憶體,而且還包括一組功能,軟體可以向系統標記16位還是32位程式碼。這是由所謂的虛擬86模式實現的,它本質上是一個內建的虛擬8086系統。

正如您所看到的,從CPU體系結構的一個演變到下一個演進,硬體(CPU程式設計)和軟體(作業系統和應用程式)都為所有那些仍然擁有非常舊軟體的使用者保持向後相容性,這些使用者仍然希望執行這些軟體。對於個人電腦使用者來說,這是有用的,但對於許多公司和小企業來說,這對於遺留系統來說是至關重要的。

64位體系結構毀了一切

4GB可定址記憶體的限制多年來一直是32位系統的支柱。然而,隨著64位處理器的發明又有了新的突破。這些系統包括一種新的模式(稱為長模式),能夠定址多達1600萬TB的記憶體。這可能需要很長時間才能成為計算機應用的限制因素。

然而,隨著這一巨大進步,出現了一個重大的權衡。當用戶試圖執行需要長期支援的“真實模式”或“虛擬8086模式”的16位應用程式時,他們發現一條錯誤訊息,該錯誤訊息如下:程式.exe不是有效的Win32應用程式。“

why 64-bit can't run 16-bit applicati***

這是令人沮喪的,但這不是世界末日。使用者可以使用模擬器或安裝執行32位體系結構的虛擬機器和能夠支援傳統16位應用程式的作業系統。

因此,雖然64位系統“不可能”執行16位MS-DOS應用程式,但使用者使用變通方法也並非不可能。但為什麼會這樣?

64位體系結構刪除了ntvdm

多年來,在每一代32位處理器中,作業系統都投入了大量精力來處理較舊的16位DOS應用程式。它是使用NTVDM或NT虛擬DOS機器完成的。

這個32位應用程式在Windows作業系統中執行,模擬了一個486體系結構,能夠使用虛擬8086處理16位定址。不幸的是,“長模式”定址不能安全地適應這種情況。相反,它需要模擬一個完整的8086處理器來支援執行DOS應用程式。

why 64-bit can't run 16-bit applicati***

微軟顯然決定放棄這一努力,以支援其第一個64位作業系統的迅速釋出。在其支援頁面上,微軟明確表示“16位MS-DOS和Microsoft Windows 3.x實用程式將不會啟動。”

不道歉。根本不支援。

市場上大量的虛擬化產品無論如何都能實現這一點,微軟顯然沒有感覺到重新投資輪子對它的最大利益。

如何在64位系統上執行16位應用程式

僅僅因為64位Windows系統不支援執行16位DOS應用程式,這並不意味著這是不可能的。你只需要安裝一些額外的工具就可以了。

如果你喜歡經典的DOS遊戲或使用任何其他復古應用程式從良好的舊的計算,有選擇。以下是四種方法,您可以在新的Windows計算機上執行它們。

1與do**ox玩復古遊戲

在PC上執行舊的DOS應用程式最簡單的方法之一就是使用模擬器。其中最流行的是DOSBox。

克里斯蒂安詳細介紹瞭如何安裝和配置DOSBox執行舊的復古遊戲在您的Windows機器。

why 64-bit can't run 16-bit applicati***

最棒的是,這些遊戲大多太舊了,被認為是廢棄軟體,所以你可以合法下載並免費玩。

2在virtualbox中執行應用程式

由於像windowsxp和windows7這樣的作業系統可以在本機上執行16位的應用程式,因此您可以在64位系統上執行相同的應用程式,方法是在虛擬機器上構建一個作業系統。

VirtualBox是最著名、最易於安裝的應用程式之一。我們有一個關於如何設定和使用VirtualBox的完整指南,所以您現在就可以開始使用這種方法了。

why 64-bit can't run 16-bit applicati***

只要確保選擇正確的作業系統安裝。堅持使用Windows7或更早版本,您可以立即在虛擬系統上下載並安裝舊的DOS應用程式。

三。使用linux

不管你怎麼說Linux,大多數Linux發行版都有一點是正確的,那就是對16位應用程式的支援。使用PAE核心的發行版,您不侷限於4GB的32位系統,因此在您的系統上執行適當的Linux發行版作為雙引導是另一種選擇。

why 64-bit can't run 16-bit applicati***

有兩種選擇:雙引導解決方案或虛擬機器。或者你可以完全拋棄Windows,然後使用Linux。任何對你有用的東西。

4使用模擬器

DOSBox並不是唯一可用於執行舊DOS應用程式的模擬器。有很多很好的模擬器也可以工作。如果你是一個遊戲玩家,這一點尤其正確。

Christian已經介紹瞭如何在任何PC上模仿准將Amiga、Raspberry Pi、Android,甚至經典的SNES。

why 64-bit can't run 16-bit applicati***

這只是冰山一角。如果你在網上搜索,你會發現有一個不同的模擬器庫,可以讓你執行任何你能想象的復古應用程式。微軟可能已經放棄了舊的16位應用程式,但你仍然有選擇。

不要放棄16位

您沒有理由認為在64位機器上執行16位應用程式是不可能的。這可能是不可能的,但正如你所看到的,有很多解決方案來完成這項任務。

  • 發表於 2021-03-26 10:39
  • 閱讀 ( 46 )
  • 分類:科技

你可能感興趣的文章

為什麼應該(不應該)雙引導linux的7個原因

... 但為什麼不選擇兩者呢?這裡有五個理由雙重啟動和兩個理由你不應該。 ...

  • 發佈於 2021-03-17 06:05
  • 閲讀 ( 51 )

如何在linux上玩windows遊戲

...執行16位的應用程式。隨著windows95的出現,Windows轉向了32位作業系統,它仍然保持了與16位應用程式的向後相容性。直到WindowsVista出現,提供64位版本的Windows,與16位應用程式的相容性才中斷。不過,Linux使用者有一個很好的解決...

  • 發佈於 2021-03-17 09:07
  • 閲讀 ( 48 )

如何確保您的計算機可以執行Windows10

... 為什麼需要升級到windows 10 ...

  • 發佈於 2021-03-19 03:52
  • 閲讀 ( 44 )

我有32位還是64位視窗?下面是如何判斷

... 下面是如何檢查您的計算機是64位還是32位,以及為什麼這一點很重要。 ...

  • 發佈於 2021-03-20 09:57
  • 閲讀 ( 46 )

為什麼linux發行版會終止32位版本(這對您意味著什麼)

... 為什麼linux發行版有32位和64位版本 ...

  • 發佈於 2021-03-24 17:24
  • 閲讀 ( 63 )

微軟將64位應用程式模擬引入arm上的Windows10

... 什麼是arm上用於windows 10的64位應用程式模擬器(the 64-bit app emulator for windows 10 on arm)? ...

  • 發佈於 2021-03-29 03:13
  • 閲讀 ( 47 )

為什麼要推遲macos升級

...Big-Sur於2020年11月12日釋出,它是一個完美的例子,說明了為什麼在進行全新升級之前應該等待。 在釋出後的幾天內,有報道稱,免費升級可能會讓老版的MacBook專業人士望而卻步。據報道,這一問題發生在2013年末和2014年中期該...

  • 發佈於 2021-04-01 07:49
  • 閲讀 ( 54 )

為什麼一些mac應用程式圖示被劃掉了?

...程式之一,您將看到一條訊息,警告您它需要更新。 但為什麼呢?“32位應用程式”到底是什麼意思? 如果不寫一篇技術研究論文,很難概括“32位應用程式”或“64位應用程式”這兩個術語的含義,但如果你把它歸結起來,這...

  • 發佈於 2021-04-01 17:19
  • 閲讀 ( 48 )

mac應用程式未啟動?下面是如何修復它

...或者新增異常以規避此問題。 只要確保你知道你在處理什麼;如果一個應用被阻止了,可能有一個很好的理由。 相關:你需要在Mac上安裝防病毒軟體嗎? mac應用商店應用避免了大多數問題 你從應用商店下載的應用程式通常都...

  • 發佈於 2021-04-01 21:01
  • 閲讀 ( 54 )

為什麼總是要安裝64位windows

...使在64位作業系統上,也可以很好地執行32位應用程式。 為什麼要安裝64位版本 32位版本的Windows記憶體限制在4gb以內,這是一個很小的數目,而現在即使是廉價的pc也通常有8gb或更多。如果你想實際使用超過4GB的記憶體,你可能...

  • 發佈於 2021-04-06 11:54
  • 閲讀 ( 45 )
kjzght73951
kjzght73951

0 篇文章

作家榜

  1. admin 0 文章
  2. 孫小欽 0 文章
  3. JVhby0 0 文章
  4. fvpvzrr 0 文章
  5. 0sus8kksc 0 文章
  6. zsfn1903 0 文章
  7. w91395898 0 文章
  8. SuperQueen123 0 文章

相關推薦