操作系统
-
什么是线程库,线程库类别及其应用
线程库为程序员提供创建和管理线程的 API。实现线程库的主要方法有两种: 在用户空间中提供一个没有内核支持的库。这种库的所有代码和数据结构都位于用户空间。这意味着,调用库内的一个函…
-
多线程模型:一对一模型、多对一模型和多对多模型
迄今为止,我们只是泛泛地讨论了线程。不过,有两种不同方法来提供线程支持:用户层的用户线程或内核层的内核线程。 用户线程位于内核之上,它的管理无需内核支持;而内核线程由操作系统来直接…
-
什么是多核,并行和并发的区别
在计算机设计早期,为了响应更多计算性能的需要,单处理器系统发展成为多处理器系统。更现代的、类似的系统设计趋势是将多个计算核放到单个芯片。无论多个计算核是在多个CPU芯片上还是在单个…
-
线程是什么,线程及其特点
几乎所有现代操作系统都允许一个进程包含多个线程。每个线程是 CPU 使用的一个基本单元,它包括线程 ID、程序计数器、寄存器组和堆栈。 进程与同一进程的其他线程共享代码段、数据段和…
-
什么是远程过程调用(RCP),远程过程调用服务实现原理详解
远程过程调用,简称 RPC,是一种最为常见的远程服务。RPC 对于通过网络连接系统之间的过程调用进行了抽象。它在许多方面都类似于 IPC 机制,并且通常建立在 IPC 之…
-
进程间通信(IPC):共享内存和消息队列原理详解
操作系统内的并发执行进程可以是独立的也可以是协作的: 如果一个进程不能影响其他进程或受其他进程影响,那么该进程是独立的,换句话说,不与任何其他进程共享数据的进程是独立的; 如果一个…
-
进程的创建和终止(超详细)
大多数系统的进程能够并发执行,它们可以动态创建和删除。因此,操作系统必须提供机制,用于创建进程和终止进程。 进程创建 进程在执行过程中可能创建多个新的进程。创建进程称为父进程,而新…
-
什么是进程调度,进程调度的来龙去脉
多道程序设计的目标是,无论何时都有进程运行,从而最大化 CPU 利用率。分时系统的目的是在进程之间快速切换 CPU,以便用户在程序运行时能与其交互。 为了满足这些目标,进程调度器选…
-
什么是进程控制块,进程控制块的作用
操作系统内的每个进程表示,釆用进程控制块(Process Control Block,PCB),也称为任务控制块。 图 1 进程控制块(PCB) 每个进程控制块如图 1 所示,它包…
-
C++ 随机数生成(STL 随机数生成)完全攻略
在随机数生成方面 STL 有 4 个术语: 随机数生成引擎是一个定义了生成随机位序列的无符号整数序列机制的类模板。STL定义了3个代表随机数引擎的类模板。本章的后面会对它们进行简短…