Home > other >  On the bare machine using assembly language to access disk problems (PCI, SATA)
On the bare machine using assembly language to access disk problems (PCI, SATA)

Time:09-17

Recently read a book written by int 0 on x13 interrupt to access disk and content, speaking, reading and writing, but later found in the out x1f0 access 0 ~ 0 x1f7 port to read and write the disk, the code to run on bochs is no problem, but in the VM, VBOX, and will not make a real computer, cannot read and write data, at the time of test whether disk free, is the infinite loop directly, I by looking for the information, found that may be new SATA motherboard is belong to the PCI bus, I personally think that is likely to be the original disk access port into something else, it's true, if it is, how to access the port, the specific is how much? Have plagued two days,

CodePudding user response:

Grave,
With the answer,
I learned that the PCIE by memory address mapping operations

CodePudding user response:

Problem solved,

CodePudding user response:

reference unemployed farmers swim 2 floor response:
grave,
With the answer,
I learned that the PCIE by memory address mapping operations

I know how to do it, access to, time too long

CodePudding user response:

reference 4 floor ARTELE response:
Quote: refer to the second floor unemployed farmers swim response:
grave,
With the answer,
I learned that the PCIE by memory address mapping operations

I know what to do, can access to, in the past for too long time


Bosses I recently encountered this problem, the protection mode disk operation problem, you can, you can help send the source code?

CodePudding user response:

references on fifth floor north response:
Quote: refer to 4th floor ARTELE response:

Quote: refer to the second floor unemployed farmers swim response:
grave,
With the answer,
I learned that the PCIE by memory address mapping operations

I know what to do, can access to, in the past for too long time


Bosses I recently encountered this problem, the protection mode disk operation problem, you can, you can help send the source code?


You should start from the SATA specification, access to the PCI bus, then according to the SATA disk access, source early didn't, but the general train of thought that is the case, you need to SATA development manual
  • Related