首页 > 试题广场 >

下列关于进程和线程说法不正确的是?()

[单选题]
下列关于进程和线程说法不正确的是?()
  • 线程可以称为轻量级的进程
  • 一个进程可以有多个线程
  • 进程之间可以共享资源,比如文件描述符等
  • 线程是CPU调度的最小单位
c  各位说的很对
发表于 2018-11-05 17:20:30 回复(0)
答案选C,前半句对的,错在后半句:“比如文件描述符等”
当前不管是linux还是Windows系统,进程就代表一个独立的程序(比如.exe),程序之间正常情况下相互隔离的,但也可以共享资源,比如采用共享内存等方式,但C选项中,文件描述符是打开具体文件后产生的,跟具体进程绑定的,因为打开文件时需要占用内存,进程之间是不能相互之间随意访问各自进程的内存的。
发表于 2018-11-05 20:24:23 回复(0)
对于Linux内核来说,并不区分进程和线程。在创建进程或者线程时,都会调用fork()函数,在fork()内部会调用clone()实现创建的功能,而进程和线程的区别就在这里:在调用clone()函数时,如果创建的是线程,需要传递一些参数标志来指明需要共享的资源,因为线程是在进程内部,多个线程可以共享进程的一些资源。对于常说的进程是"资源分配的基本单位",我的理解是因为咱们在调用fork()创建进程时需要给每个进程创建独立的进程地址空间;而对于线程就不需要,因为它会与进程共享一块地址空间。常说的"线程是CPU调度的最小单位",我的理解是:像对于常见Linux调度器,比如CFS,实时调度器等都是以线程为基本单位来进行调度,因此是这样的说法。
编辑于 2018-11-18 18:18:39 回复(0)
父子进程间才能共享文件描述符,本题的意思应该是指所有的进程
发表于 2018-11-05 11:08:23 回复(0)
c 觉得大家说的很对 我选c是因为abd都对
编辑于 2019-06-30 15:55:10 回复(0)