IT入门 > 面试题 > Linux题库 >
  • 多进程和多线程之间如何选择?

    2019/11/07 点击:3502

    使用多进程的场景:弱相关的任务、需要拓展到多机分布的任务; 使用多线程的场景:需要频繁创建和销毁的任务(如Web服务器)、需要进行大量计算的任务、强相关的任务、需要拓展到

  • 进程的组成部分有哪些?

    2019/11/07 点击:2602

    进程通常由进程控制块和相应的地址空间组成; Linux环境下,进程控制块主要包含: 进程标识符(即进程ID); 进程的当前状态; 相应的进程控制信息; 地址空间又可以分为: 文本段:

  • 进程的基本状态有哪些?

    2019/11/07 点击:7373

    匿名管道 pipe :半双工的通信方式,数据只能单向流动,且只能在有亲缘关系的进程间使用; 有名管道 named pipe :与 pipe 相似,但允许在无亲缘关系的进程间使用; 消息队列 message q

  • 进程的上下文可以分为哪几个部分?

    2019/11/07 点击:2648

    用户级上下文:正文、数据、用户堆栈以及共享存储区; 寄存器上下文:通用寄存器、程序寄存器(IP)、处理器状态寄存器(EFLAGS)、栈指针(ESP); 系统级上下文:进程控制块(task_struct)、

  • 什么是进程切换/上下文切换?

    2019/11/07 点击:1539

    进程切换即上下文切换,是指处理器从一个进程切换到另一个进程,内核在处理器上对于进程进行以下操作: 挂起一个进程,将这个进程在处理器中的状态(即上下文)存储于内存中;

  • 进程调度算法有哪几种?

    2019/11/07 点击:5716

    先来先服务(FCFS):有利于长进程、CPU繁忙的进程,不利于短进程、I/O繁忙的进程; 短作业优先(SJF):对预计执行时间短的进程优先分派处理机,通常后来的短进程不抢先正在执行的进程

  • 什么是孤儿进程?什么是僵尸进程?

    2019/11/07 点击:2857

    孤儿进程:一个父进程退出,而它的一个或多个子进程还在运行,那么这些子进程将成为孤儿进程,将被 init 进程(进程号为1)所收养,并由 init 进程对这些子进程完成状态收集工作;

  • 如何使用fork函数

    2019/11/07 点击:3554

    pid_t pid = fork(); switch (pid) { case -1: cerr fork() 函数创建的子进程会完全复制父进程的资源,代码也不例外,但是 fork() 函数在父进程中返回的是子进程的 pid ,如果为 -1 则说明创建子进程失

  • 线程同步的方法有哪些?

    2019/11/07 点击:900

    临界区:串行化访问公共资源或代码段,速度较快; 互斥量:采用互斥对象机制,只有拥有互斥对象的线程才能访问公共资源,而因为互斥对象只有一个,所以可以保证公共资源不会被

  • 什么是临界区?

    2019/11/07 点击:7158

    临界区是一段针对共享资源的保护代码,该保护代码在任意时刻只允许一个线程对共享资源访问。 线程进入临界区的调度原则是: 如果有若干进程要求进入空闲的临界区,则每次只允