Re: [请益] user/kernel level

楼主: watz0n (watz0n)   2014-10-08 23:47:20
※ 引述《zelkova (*〞︶〝*)》之铭言:
: 各位前辈好
: 最近面试的时候 遇到一位面试官问了一个问题
: 类似这样 "你这支程式是user level还是kernel level?"
: 以前修OS大概还能区分这两个名词的差异
: 但是我发现我都没去思考怎么区分程式是属于哪一个@@
: 请问有什么关系可以判断程式是属于user/kernel level呢? 谢谢
推文主要是表示Kernel/User使用的内存区块不同,
但是重新看了下Figure 3确实也没有切得很清楚.
大略切割架构如下连结的Figure 2,
http://www.ibm.com/developerworks/library/l-linux-kernel/
然后User Level/Kernel Level应该是类似如下内文的说法:
http://unix.stackexchange.com/questions/87625/
what-is-difference-between-user-space-and-kernel-space
但是我比较喜欢下面这篇的解释方法.
http://stackoverflow.com/questions/17208648/
linux-kernel-space-and-user-space
至于为什么要切这两个模式, 应该是要实现OS里面设计的分时多工系统,
因为硬件只有一个, 但是软件有千千万万个,
不独立一个区域管理, 有时资源(CPU, Memory, IO等)就会冲突而瘫痪.
再详细要去看有OS实作的书籍解释如何分配的算法了.
Many Thanks,
watz0n
作者: zelkova (*〞︶〝*)   2014-10-09 00:19:00
先谢谢watz0n大大的回复我想我的问题主要来自于对firmware的误解 因为我写的lib被烧成fw 但是又一直认为fw会跑在kernel mode间接误会我写的library会跑在kernel mode
楼主: watz0n (watz0n)   2014-10-09 00:34:00
恩,原本Firmware指很简单的IO如BIOS,因为内存有限又很贵但是Flash疯狂演进后就大到几乎能塞下基础OS了..回到原题, 通常.so会挂在user下, .ko会挂在kernel下.

Links booklink

Contact Us: admin [ a t ] ucptt.com