原创 搭建基於busybox和qemu的arm-linux系統

轉載請註明出處:http://writeblog.csdn.net/PostEdit.aspx?entryId=5826373   一、系統版本選擇     交叉編譯器版本4.4.0     內核版本2.6.30.8     busybo

原创 x86實模式Memory Map和Port Address Assignments

轉自:http://hi.baidu.com/xshaonan/blog/item/443c8b091ff8bbc53bc763b7.html   General x86 Real Mode Memory Map: 0x0000

原创 [轉]C標準庫中的setjmp與longjmp

在C標準庫中有一對非常有趣的函數setjmp()函數與longjmp()函數,用來實現代替goto實現一些非常重要的功能,如異常處理。C語言中,標準庫函數setjmp和longjmp形成了結構化異常工具的基礎。簡單的說即setjmp

原创 x86虛擬機設計之自引用和自修改代碼

一、關於自修改代碼 基本思路: 1、將源代碼區域加上寫保護,當出現自修改代碼時,就會觸發一個異常。軟件截獲此異常,並清空全部cache或清空出現異常位置的cache。  2、截獲所有的寫內存的地方,查看是否寫了保存了的tb,如果寫了,就釋

原创 x86虛擬機設計之動態翻譯塊

翻譯塊的結束條件: 1、跳轉指令 2、軟件中斷指令 3、實模式和保護模式切換的指令 4、保護模式下段selector改變的時候   優化: 1、消除條件3       如果指令在保護模式和實模式下有不同的操作,這些不同的區分需要放到tb內

原创 爲什麼GPL是更好的開源許可證?

作者: 阮一峯 日期: 2010年2月27日 1. 讓我從一件新聞講起。 2009年,計算機業界發生了一件大事:甲骨文公司以74億美元收購SUN公司。 消息宣佈後,有一個人堅決反對這筆交易。他叫Michael Wide

原创 CFS進程調度

一、概述 linux 2.6.23中採用了一個全新的調度策略CFS(Completely Fair Scheduler)來處理非實時進程。 二、主要數據結構 1.爲了和原先的實時策略更好的融合,linux在實現CFS之餘,還將內核的調度

原创 自由軟件許可證GPL

作者: 阮一峯 日期: 2004年6月20日 自從版權制度問世,大多數人就形成了一種觀念:只要是正版軟件,就一定會收費。 如果一種正版軟件可以無限制的免費使用,甚至還允許你複製和出售,不少人就會產生懷疑:難道世界上真的有免費的