內容概要
今天分享的主要內容為,建立package的一些概念。
建立package分三步
建立一個空的裝置節點(device node),並將該節點設定為活動節點(active package),在Device Tree中 device node 和 package 指的是同一個東西因此經常混用。解析裝置的FCode定義它的方法和屬性,併為它分配空間以儲存它的資料設定它的例項資料(instance-specific data)的值(把有些東西翻譯成中文還挺彆扭的,比如例項資料,所以今後一些名詞我都儘量不用中文翻譯了,對於一些名詞不理解的可以私信我)。建立Package所需要的方法都在/package節點下。
active package存在active package時
新建立的Forth words都會成為該active package的方法。新建立的variables、values、buffers、和defer words都會成為該active package的資料。預設情況下是static data,如果使用了instance-specific 標識這視為instance-specific data。如果存在current instance 新建立的properties會被新增到current instance的package中,否則properties會新增到active package中。搜尋Forth words時,會先搜尋active package的Forth words。如果active package沒有對應的Forth words則在搜尋全域性Forth words不存在active package時
新建立的Forth words會成為全域性Forth words新建立的variables、values、buffers、和defer words都會成為全域性的資料如果存在current instance 新建立的properties會被新增到current instance的package中,否則無法建立properties。搜尋Forth words時,直接搜尋全域性Forth words#BIOS# #作業系統#
最新評論