





{"id":1739,"date":"2011-02-20T22:24:53","date_gmt":"2011-02-21T02:24:53","guid":{"rendered":"http:\/\/www.killtest.hk\/?p=1739"},"modified":"2011-02-20T22:24:53","modified_gmt":"2011-02-21T02:24:53","slug":"linux-nei","status":"publish","type":"post","link":"https:\/\/www.killtest.hk\/index.php\/unix\/linux-nei\/","title":{"rendered":"Linux\u5167\u6838\u53ef\u52a0\u8f09\u6a21\u584a\u5256\u6790"},"content":{"rendered":"<p>Linux \u5c31\u662f\u901a\u5e38\u6240\u8aaa\u7684\u55ae\u5167\u6838\uff08monolithic kernel\uff09\uff0c\u5373\u64cd\u4f5c\u7cfb\u7d71\u7684\u5927\u90e8\u5206\u529f\u80fd\u90fd\u88ab\u7a31\u70ba\u5167\u6838\uff0c\u4e26\u5728\u7279\u6b0a\u6a21\u5f0f\u4e0b\u904b\u884c\u3002\u5b83\u8207\u5fae\u578b\u5167\u6838 \u4e0d\u540c\uff0c\u5f8c\u8005\u53ea\u628a\u57fa\u672c\u7684\u529f\u80fd\uff08\u9032\u7a0b\u9593\u901a\u4fe1 [IPC]\u3001\u8abf\u5ea6\u3001\u57fa\u672c\u7684\u8f38\u5165\/\u8f38\u51fa [I\/O] \u548c\u5167\u5b58\u7ba1\u7406\uff09\u7576\u4f5c\u5167\u6838\u904b\u884c\uff0c\u800c\u628a\u5176\u4ed6\u529f\u80fd\uff08\u9a45\u52d5\u7a0b\u5e8f\u3001\u7db2\u7d61\u5806\u68e7\u548c\u6587\u4ef6\u7cfb\u7d71\uff09\u6392\u9664\u5728\u7279\u6b0a\u7a7a\u9593\u4e4b\u5916\u3002\u56e0\u6b64\uff0c\u60a8\u53ef\u80fd\u8a8d\u70ba Linux \u662f\u58f9\u500b\u5b8c\u5168\u975c\u614b\u7684\u5167\u6838\uff0c\u4f46\u4e8b\u5be6\u6070\u6070\u76f8\u53cd\u3002\u901a\u904e Linux \u5167\u6838\u6a21\u584a\uff08LKM\uff09\u53ef\u4ee5\u5728\u904b\u884c\u6642\u52d5\u614b\u5730\u66f4\u6539 Linux\u3002<\/p>\n<p>\u00a0\u00a0\u00a0 \u53ef\u52d5\u614b\u66f4\u6539 \u662f\u6307\u53ef\u4ee5\u5c07\u65b0\u7684\u529f\u80fd\u52a0\u8f09\u5230\u5167\u6838\u3001\u5f9e\u5167\u6838\u53bb\u9664\u67d0\u500b\u529f\u80fd\uff0c\u751a\u81f3\u6dfb\u52a0\u4f7f\u7528\u5176\u4ed6 LKM \u7684\u65b0 LKM\u3002LKM \u7684\u512a\u9ede\u662f\u53ef\u4ee5\u6700\u5c0f\u5316\u5167\u6838\u7684\u5167\u5b58\u5360\u7528\uff0c\u53ea\u52a0\u8f09\u9700\u8981\u7684\u5143\u7d20\uff08\u9019\u662f\u5d4c\u5165\u5f0f\u7cfb\u7d71\u7684\u91cd\u8981\u7279\u6027\uff09\u3002 Linux \u4e0d\u662f\u53ef\u4ee5\u9032\u884c\u52d5\u614b\u66f4\u6539\u7684\u60df\u58f9\uff08\u4e5f\u4e0d\u662f\u7b2c\u58f9\u500b\uff09\u55ae\u5167\u6838\u3002Berkeley Software Distribution\uff08BSD\uff09\u7684\u8b8a\u9ad4\u3001Sun Solaris\u3001\u66f4\u8001\u7684\u5167\u6838\uff08\u6bd4\u5982 OpenVMS\uff09\uff0c\u4ee5\u53ca\u5176\u4ed6\u6d41\u884c\u7684\u64cd\u4f5c\u7cfb\u7d71\uff08\u6bd4\u5982 Microsoft? Windows? \u548c Apple Mac OS X\uff09\u90fd\u652f\u6301\u53ef\u52a0\u8f09\u6a21\u584a\u3002 LKM \u8207\u76f4\u63a5\u7de8\u8b6f\u5230\u5167\u6838\u6216\u5178\u578b\u7a0b\u5e8f\u7684\u5143\u7d20\u6709\u6839\u672c\u5340\u5225\u3002\u5178\u578b\u7684\u7a0b\u5e8f\u6709\u58f9\u500b main \u51fd\u6578\uff0c\u5176\u4e2d LKM \u5305\u542b entry \u548c exit \u51fd\u6578\uff08\u5728 2.6 \u7248\u672c\uff0c\u60a8\u53ef\u4ee5\u4efb\u610f\u547d\u540d\u9019\u4e9b\u51fd\u6578\uff09\u3002\u7576\u5411\u5167\u6838\u63d2\u5165\u6a21\u584a\u6642\uff0c\u8abf\u7528 entry \u51fd\u6578\uff0c\u5f9e\u5167\u6838\u522a\u9664\u6a21\u584a\u6642\u5247\u8abf\u7528 exit \u51fd\u6578\u3002\u56e0\u70ba entry \u548c exit \u51fd\u6578\u662f\u7528\u6236\u5b9a\u7fa9\u7684\uff0c\u6240\u4ee5\u5b58\u5728 module_init \u548c module_exit \u5b8f\uff0c\u7528\u65bc\u5b9a\u7fa9\u9019\u4e9b\u51fd\u6578\u5c6c\u65bc\u54ea\u7a2e\u51fd\u6578\u3002LKM \u9084\u5305\u542b\u58f9\u7d44\u5fc5\u8981\u7684\u5b8f\u548c\u58f9\u7d44\u53ef\u9078\u7684\u5b8f\uff0c\u7528\u65bc\u5b9a\u7fa9\u6a21\u584a\u7684\u8a31\u53ef\u8b49\u3001\u6a21\u584a\u7684\u4f5c\u8005\u3001\u6a21\u584a\u7684\u63cf\u8ff0\u7b49\u7b49\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Linux \u5c31\u662f\u901a\u5e38\u6240\u8aaa\u7684\u55ae\u5167\u6838\uff08monolithic kernel\uff09\uff0c\u5373\u64cd\u4f5c\u7cfb\u7d71\u7684\u5927\u90e8\u5206\u529f\u80fd\u90fd\u88ab\u7a31\u70ba\u5167\u6838\uff0c\u4e26 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[531],"tags":[295,720,721],"class_list":["post-1739","post","type-post","status-publish","format-standard","hentry","category-unix","tag-linux","tag-720","tag-721"],"_links":{"self":[{"href":"https:\/\/www.killtest.hk\/index.php\/wp-json\/wp\/v2\/posts\/1739","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.killtest.hk\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.killtest.hk\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.killtest.hk\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.killtest.hk\/index.php\/wp-json\/wp\/v2\/comments?post=1739"}],"version-history":[{"count":0,"href":"https:\/\/www.killtest.hk\/index.php\/wp-json\/wp\/v2\/posts\/1739\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.killtest.hk\/index.php\/wp-json\/wp\/v2\/media?parent=1739"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.killtest.hk\/index.php\/wp-json\/wp\/v2\/categories?post=1739"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.killtest.hk\/index.php\/wp-json\/wp\/v2\/tags?post=1739"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}