我明白,在過去的C語言中,你可能會搞砸指針和內存分配,並可能意外地損壞其他正在運行的程序或操作系統本身以外的程序,並導致系統崩潰。這需要重新啓動才能繼續進行程序開發。通過操作系統安全性,使用C編程變得更容易並執行禁用?
系統安全性改進是否阻止了這種情況的發生?
在過去的MSDOS和Windows 3.1/95/98/Me和MacOS之前的版本10(通常在搶先式多任務成爲所有事情的常態之前)系統安全性一般不存在。程序可以隨時隨地在任何地方寫數據。
但是現在,隨着更現代化的系統設計和流程安全性,程序通常被系統安全阻止,無意或有意破壞其他任何東西。
現代處理器的執行禁用功能也可能有助於防止意外跳到隨機存儲器位置並在處理器機器代碼中運行任何內存位置。
那麼,如何用C語言編寫現代程序而不嘗試破解操作系統安全性呢?
你還能設法意外崩潰整個系統嗎?我認爲這是不可能的。內核或其他系統安全步驟進入並暫停動作。
你可以破壞你的登錄環境,並且必須註銷並重新登錄嗎?我認爲這也是被阻止的,因爲進程通常不應該訪問其他進程內存空間,即使在你自己的登錄安全環境中也是如此。
一般來說,現在使用C編程似乎比以前更容易,因爲現在這些系統保護功能到處都是使用,以防止您在自己和系統中拍攝腳部。
那麼,普通用戶程序受系統保護 - 但是如果你寫e。 G。設備驅動程序,您很快就會回到以前的狀態 - 試想一下,在中斷服務程序中解引用空指針... – Aconcagua