作者sacredforce (小靖)
看板Programming
標題[問題] Memory Access Violation
時間Tue Feb 12 22:49:48 2008
我很好奇一件事....
那就是O.S.如何偵測無效的記憶體存取,
又能夠讓CPU全速執行程式
像是我平常用VC++ 6.0寫程式,
以Release的Configurationn所Build
出來的程式,執行時若發現有bug
則會出現作業無效視窗。
作業系統到底是怎麼能夠讓程式全速執行
而且又能夠偵測到無效的記憶體存取呢?
請教各位高手....謝謝^^
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 124.8.55.215
※ 編輯: sacredforce 來自: 124.8.55.215 (02/12 22:49)
1F:→ MOONRAKER:啥是全速?你怎知道現在是全速或半速? 59.115.215.219 02/12 23:03
2F:→ legnaleurc:印象中是有個管理機制來劃分哪塊記憶體 211.74.131.10 02/12 23:07
3F:→ legnaleurc:註冊給哪個程式用 211.74.131.10 02/12 23:07
4F:→ MOONRAKER:有一個機制和很多表 每一個process有一 59.115.215.219 02/12 23:19
5F:→ MOONRAKER:個VM表 OS又維護一個page table 管理有 59.115.215.219 02/12 23:19
6F:→ MOONRAKER:哪一些VM page目前載入到記憶體裡面 59.115.215.219 02/12 23:19
7F:→ MOONRAKER:哪一些可以寫回去騰出空間給別人 等等 59.115.215.219 02/12 23:20
8F:→ MOONRAKER:但是這全是透通(transparent)的 所以所 59.115.215.219 02/12 23:20
9F:→ MOONRAKER:謂"全速"是啥?守規矩的process根本不會 59.115.215.219 02/12 23:20
10F:→ MOONRAKER:知道現在是全速還是半速,也不用關心 59.115.215.219 02/12 23:21