Giter Site home page Giter Site logo

Comments (7)

muyiyangyang avatar muyiyangyang commented on June 2, 2024

from flash-linux0.11-talk.

superjcd avatar superjcd commented on June 2, 2024

from flash-linux0.11-talk.

KunYi avatar KunYi commented on June 2, 2024

check this https://en.wikipedia.org/wiki/INT_13H
通常這個編號是按照BIOS偵測順序來的
看硬體界面的順序 不過一般順序會是
机械硬盘(0x80),一块固态硬盘(0x81),一个U盘(0x82),一个软盘(0x00)
不過如果你的"固态硬盘"是NVM 我猜可能你的BIOS連INT13 都沒有
這幾年的電腦只有UEFI 沒有legacy BIOS的CSM模組了

from flash-linux0.11-talk.

Gmoonnight avatar Gmoonnight commented on June 2, 2024

check this https://en.wikipedia.org/wiki/INT_13H 通常這個編號是按照BIOS偵測順序來的 看硬體界面的順序 不過一般順序會是 机械硬盘(0x80),一块固态硬盘(0x81),一个U盘(0x82),一个软盘(0x00) 不過如果你的"固态硬盘"是NVM 我猜可能你的BIOS連INT13 都沒有 這幾年的電腦只有UEFI 沒有legacy BIOS的CSM模組了

这是一台10年寿命的电脑,既支持Legacy BIOS也支持UEFI;
image

所以这个项目是基于Legacy BIOS的是吗?我理解的是这样的:
image

其次,项目中的这张图片是软盘的编号,而第四节的表述是磁盘或硬盘拷贝到内存,在软盘已经消失的今天,会给人很大的困惑;
image

然后,我现在的困惑在于,我可以通过第一张图片显示的那样选择我的启动设备,比如:u盘、固态硬盘、机械硬盘等,那么,os程序在进行磁盘扇区拷贝到内存前,如何知道启动设备编号,以调用int 0x13中断服务程序?

from flash-linux0.11-talk.

Gmoonnight avatar Gmoonnight commented on June 2, 2024
image 我找到了,谢谢!

from flash-linux0.11-talk.

KunYi avatar KunYi commented on June 2, 2024

那個號碼是legacy BIOS自己指定的 它當然知道 你這個電腦是 UEFI with CSM module 本質是UEFI 但是他有把legacy BIOS的功能做出來

BIOS 本身提供界面 讓使用者呼叫 int13 是OS loader 或是DOS 本身操作磁碟時約定的界面,這樣OS本身不需要知道硬件是那個,它直接就能使用int 13h 去讓BIOS替它工作 你可以把BIOS看成一個寫好的函式庫 只是因為那古早的時代,它們是約定使用軟體中斷來傳遞資料 BIOS工程師針對硬件環境寫好對應的界面 讓上層軟件調用 譬如它跟上層軟件約定好 00~7F 屬於Floppy, 080h 屬於系統內第一個Hardisk , 譬如這樣好了系統上都沒有Harddisk 也沒有Floopy 但是支持U盤開機, 這時U盤就會被BIOS認為他是第一個硬盤 配給他的編號就是0x80, 如果有硬盤一個 0x80 就是實際的硬盤, 0x81 就是U盤類似這樣的都是BIOS內部算法決定的

from flash-linux0.11-talk.

Gmoonnight avatar Gmoonnight commented on June 2, 2024

好滴,感谢~

from flash-linux0.11-talk.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.