本文目录
- init函数和init进程的区别
- finite和limit的区别
- 什么叫finite verbs(限定动词)
init函数和init进程的区别
由于执行init()函数的内核线程和init进程的进程标识符都是1,它们又都叫init,因此init()函数和init进程容易造成概念上的模糊不清。主要区别:1、init()函数是内核代码的一部分,在内核态运行,是独立的可执行代码的一部分。2、init进程在Linux操作系统中是一个具有特殊意义的进程,它是由内核启动并运行的第一个用户进程,因此它不是运行在内核态,而是运行在用户态。它的代码不是内核本身的一部分,而是存放在硬盘上可执行文件的映象中,和其他用户进程没有什么两样。0号进程--》1号内核线程--》1号内核进程--》init进程(1号用户进程)0号进程:这是系统引导时自动形成的一个进程,实际上就是内核本身。它是系统中后来产生的所有进程的祖先。当内核系统完成自身初始化工作后,由内核本身调用函数kernel_thread(),它使用int 0x80系统调用创建了第一个内核线程。1号内核线程:所谓内核线程,在Linux系统中是指没有虚拟存储空间的进程,内核线程可以直接使用物理地址空间,运行在内核态中。在软中断系统调用返回后,通过比较ESP和ESI寄存器的值来判断父、子进程。如果ESP寄存器的值就等于ESI寄存器的值,系统认为是父进程,就是内核本身,它就是0号进程。否则就是内核创建的第一个内核线程。所以此线程就是1号线程。1号内核进程:如果是1号内核线程,程序控制该子程序直接去执行init()函数,随后,1号线程将演变成1号内核进程。init进程:init()函数调用execve()从文件/etc/inittab中装入可执行程序init()并执行,从此执行init()函数的1 号内核进程演变成为init进程。也就是说由init()函数产生了init进程。在这个演变过程中没有使用fork(),因此,init进程的进程标识符仍然是1号内核进程的标识符1。
finite和limit的区别
finite 英[ˈfaɪnaɪt] 美[ˈfaɪˌnaɪt] adj. 有限的;[语]限定的;[数]有穷的,有限的 n. 有限性;有限的事物 [例句]Will mankind ’s insatiable demands exhaust the planet ’s finite resources?未来将会是人类的贪得无厌耗尽地球有限的资源?limit 英[’lɪmɪt] 美[ˈlɪmɪt] n. 限制;限量,限度;界限 vt. 限制,限定 名词复数:limits [例句]That is a severe limit on religious freedom.这是对于宗教自由的严重限制。
什么叫finite verbs(限定动词)
英语上根据动词在句法上是否受到主语的限定,英语动词有可以分为限定动词(Finite Forms of Verbs)和非限定动词(Non-Finite Forms of Verbs)。
限定动词又叫谓语动词,在句中充当谓语,在人称和数上必须和主语保持一致,同时还表现出时态、语态和语气的变化。
例如:I play basketball、He plays basketball.
扩展资料
一、限定动词
又叫谓语动词,在句中充当谓语,在人称和数上必须和主语保持一致。
二、非限定动词:
又叫非谓语动词,在句中不能单独充当谓语(但可以和情态动词或助动词一起充当谓语),它们不受主语的限定,没有人称和数的变化,具有名词、形容词和副词的特征,在句中可以充当主语、宾语、表语、定语、状语、补足语等。
参考资料来源:百度百科——限定动词