学习笔记6

教材第三章知识点总结

Unix/Linux进程管理:

  1. 多任务处理:

    • 多任务处理是指操作系统同时运行多个进程或线程的能力。
    • 操作系统通过时间片轮转或优先级调度等算法来实现多任务处理。
    • 多任务处理可以提高系统的资源利用率和响应速度。
  2. 进程的概念理解:

    • 进程是程序的执行实例,是操作系统进行资源分配和调度的基本单位。
    • 进程由程序代码、数据和执行状态等组成。
    • 每个进程都有一个唯一的进程标识符(PID)。
    • 进程可以通过系统调用创建、销毁和管理。
  3. 多任务处理系统:

    • 多任务处理系统是一种能够同时运行多个任务的操作系统。
    • type.h文件定义了进程控制块(PCB)的数据结构。
    • ts.s文件包含了多任务处理系统的汇编代码。
    • queue.c文件实现了进程的队列操作。
    • t.c文件是多任务处理系统的主程序,包含了进程的创建、调度和管理等功能。
  4. 进程同步:

    • 进程同步是指多个进程之间按照一定的顺序执行,以避免竞争条件和数据不一致问题。
    • 睡眠模式是一种进程等待的机制,使得进程在满足某个条件之前暂停执行。
    • 唤醒操作是将一个或多个等待的进程从睡眠状态唤醒,使其继续执行。
  5. 进程终止:

    • kexit()是进程终止的算法,用于将进程从系统中移除。
    • 进程家族树是以INIT进程为根的进程树形结构,用于表示进程之间的关系。
    • 等待子进程终止是通过wait()或waitpid()系统调用来实现的,父进程会阻塞直到子进程终止。
  6. MT系统中的进程管理:

    • MT系统中的进程管理包括进程的创建、调度、终止和资源管理等。
    • 进程的创建使用fork()系统调用来创建一个与当前进程相同的子进程。
    • 进程的调度由操作系统的调度算法决定,可以通过设置进程的优先级来影响调度顺序。
    • 进程的终止可以通过exit()系统调用显式终止,或者当进程执行完毕时自动终止。
    • 进程的资源管理包括对内存、文件和设备等资源的分配和释放。
  7. Unix/Linux中的进程:

    • 进程来源可以是用户通过Shell命令启动,或者由其他进程创建。
    • INIT进程是Unix/Linux系统中的第一个进程,是所有进程的祖先。
    • 守护进程是在后台运行的进程,通常用于执行系统任务。
    • 登录进程是用户登录系统时启动的进程,通常是getty或sshd。
    • sh进程是Shell进程,用于解释和执行用户输入的命令。
    • 进程的执行模式可以是顺序执行、并发执行或并行执行。
  8. 进程管理的系统调用:

    • fork()系统调用用于创建一个与当前进程完全相同的子进程。
    • 进程执行顺序由操作系统的调度算法决定。
    • 进程终止可以通过exit()系统调用显式终止,或者当进程执行完毕时自动终止。
    • 等待子进程终止可以使用wait()或waitpid()系统调用。
    • Linux中的subreaper进程是一种特殊的进程,可以接管孤儿进程的终止处理。
    • exec()系统调用可以更改进程的执行映像,即加载并执行新的程序。
    • 环境变量是进程运行时可用的全局变量,可以通过getenv()和setenv()等系统调用进行操作。
  9. I/O重定向:

    • 文件流是对文件描述符的高级封装,提供更方便的I/O操作接口。
    • 文件流I/O是通过标准库函数如fopen()、fread()等进行文件读写。
    • 重定向标准输入是将标准输入从键盘改为从文件中读取。
    • 重定向标准输出是将标准输出从屏幕改为输出到文件中。
  10. 管道:

    • Unix/Linux中的管道是一种进程间通信机制,用于在两个进程之间传递数据。
    • 管道命令处理是指使用管道连接多个命令,将一个命令的输出作为另一个命令的输入。
    • 将管道写进程与管道读进程连接起来可以实现进程间的数据传输。
    • 命名管道是一种特殊的文件,用于实现不相关进程间的通信。

苏格拉底挑战





实践



posted @ 2023-10-21 10:45  20211304王琛凯  阅读(5)  评论(0编辑  收藏  举报