微网站 价格电脑做网站用什么软件

张小明 2026/1/2 20:19:37
微网站 价格,电脑做网站用什么软件,h5制作官网,网页设计实训总结万能版1000字目录 一、进程的定义与核心数据结构 1.进程的本质 2.进程控制块#xff08;PCB#xff09; 二、进程与程序的区别与联系 三、进程的虚拟内存布局 四、进程的分类 五、进程的状态与转换 六、进程调度机制 1.调度策略 2.上下文切换 七、进程管理常用命令 八、进程创…目录一、进程的定义与核心数据结构1.进程的本质2.进程控制块PCB二、进程与程序的区别与联系三、进程的虚拟内存布局四、进程的分类五、进程的状态与转换六、进程调度机制1.调度策略2.上下文切换七、进程管理常用命令八、进程创建fork () 系统调用1.fork () 函数原理2.fork () 函数原型与示例3.关键注意事项一、进程的定义与核心数据结构1.进程的本质进程是程序在计算机中的一次执行过程是操作系统为程序分配 CPU、内存、文件描述符等资源的最小单元。与静态存储在磁盘上的程序代码、数据的集合不同进程是动态的具有生命周期会随着执行过程的推进而发生状态变化、资源占用变化。2.进程控制块PCBLinux 系统通过进程控制块Process Control Block, PCB管理进程PCB 是进程存在的唯一标识内核通过 PCB 跟踪和控制进程的所有行为。在 Linux 内核中PCB 对应的结构体为task_struct其核心字段包括进程 IDPID系统中唯一标识进程的整数取值范围 1~32767可通过 /proc/sys/kernel/pid_max 调整父进程 IDPPID创建当前进程的父进程 PID形成进程树结构init 进程 PID1是所有进程的根进程状态标识进程当前的运行状态如运行态、就绪态、阻塞态等资源描述包括内存地址空间、打开的文件描述符集合、CPU 寄存器上下文、信号掩码等调度信息优先级、时间片、调度策略等用于进程调度器分配 CPU 资源进程权限UID用户 ID、GID组 ID、文件权限掩码等控制进程对系统资源的访问权限。二、进程与程序的区别与联系进程与程序是操作系统中的两个核心概念二者既相互关联又存在本质区别对比维度程序进程存在形态静态实体以二进制文件形式存储于磁盘动态实体是程序的执行过程占用系统资源生命周期永久存在除非主动删除文件暂时存在从创建到终止有明确生命周期资源占用不占用 CPU、内存等运行时资源占用 CPU、内存、文件描述符等系统资源关联性一个程序可对应多个进程如多个终端同时执行 ls 命令生成多个 ls 进程一个进程对应一个或多个程序如进程执行过程中加载动态库核心特征指令与数据的集合指令执行、资源分配、状态变化的动态过程三、进程的虚拟内存布局为实现资源隔离与高效管理Linux 为每个进程分配独立的虚拟内存空间32 位系统默认 4GB64 位系统支持更大空间虚拟内存通过页表映射到物理内存。进程的虚拟内存空间从低地址到高地址依次划分为以下区域代码段Code Segment存储程序的只读指令代码由编译器编译生成可被多个进程共享如动态库代码以节省内存。数据段Data Segment存储已初始化的全局变量和静态变量程序运行期间可修改。BSS 段Block Started by Symbol存储未初始化的全局变量和静态变量内核在进程启动时会将该区域初始化为 0占用物理内存但不占用磁盘文件空间。堆Heap动态内存分配区域由程序员通过 malloc、calloc、realloc 等函数手动申请通过 free 释放空间从低地址向高地址增长需手动管理避免内存泄漏。共享库 / 内存映射段Shared Libraries/Memory Mapping存储动态链接库、文件映射mmap数据、共享内存等用于进程间通信或资源共享。栈Stack存储局部变量、函数参数、返回地址等由编译器自动分配和释放空间从高地址向低地址增长默认大小为 8MB可通过 ulimit -s 调整栈溢出会导致进程崩溃。地址映射表进程的内存空间四、进程的分类根据运行特性和使用场景Linux 进程可分为三类交互式进程与用户直接交互依赖用户输入触发执行响应时间要求较高。例如终端中执行的 ls、gcc 命令文本编辑器 vim 等其调度优先级通常较高。批处理进程无需用户交互按预设逻辑批量执行任务通常在后台运行占用系统资源相对稳定。例如定时备份脚本、日志分析程序等由 crontab 调度或手动启动。守护进程Daemon Process长期在后台运行的系统服务进程无控制终端通常在系统启动时自动启动用于提供持续的服务如网络服务、硬件管理等。例如 sshdSSH 服务、nginxWeb 服务器、systemd系统初始化进程等进程名通常以 d 结尾。五、进程的状态与转换Linux 进程在生命周期中会处于不同状态内核通过状态标识管理进程的调度和资源分配。根据内核定义进程状态存储在 task_struct 的 state 字段中主要包括以下 5 种核心状态标识状态描述R运行 / 就绪态正在执行或等待 CPU 调度S可中断睡眠态等待事件 / 信号可被唤醒D不可中断睡眠态等待关键 IO不可被信号中断Z僵尸态进程终止父进程未回收资源T停止态被信号暂停SIGCONT 恢复操作系统的进程状态切换图Linux 的进程状态切换图六、进程调度机制Linux 系统中进程数量远多于 CPU 核心数进程调度器的核心作用是合理分配 CPU 资源确保系统吞吐量、响应时间、公平性等指标最优。1.调度策略Linux 内核采用完全公平调度器CFS, Completely Fair Scheduler作为默认调度器其设计思想是 “按权重分配 CPU 时间”核心机制包括时间片为每个进程分配基于权重的时间片权重越高时间片越长虚拟运行时间vruntime记录进程占用 CPU 的实际时间调度器优先选择 vruntime 最小的进程执行确保公平性调度类支持多种调度类如 SCHED_NORMAL普通进程默认、SCHED_FIFO实时进程先进先出、SCHED_RR实时进程时间片轮转。2.上下文切换当调度器切换进程执行时需进行上下文切换Context Switch核心步骤为保存当前进程的 CPU 寄存器上下文、PCB 状态到内存从就绪队列中选择下一个待执行进程加载该进程的 CPU 寄存器上下文、PCB 状态到 CPU切换虚拟地址空间更新页表寄存器恢复进程执行。当 a.out 的 CPU 的时间片耗尽时就需要运行b.out。 a.out需要把自己的状态信息pcb、硬件上一些寄存器、PC内存相关数据缓存到硬盘上。当a.out把内存释放出来后b.out就可以把自己前进缓存在硬盘的数据读入内存。然后开始运行。上下文切换会消耗 CPU 资源频繁切换会降低系统性能因此优化进程设计时需减少不必要的上下文切换。七、进程管理常用命令Linux 提供了丰富的命令用于查看、控制进程核心命令如下命令功能ps aux查看所有进程详细信息top实时监控进程 CPU / 内存占用kill -9 PID强制终止进程pstree树状显示进程父子关系fg/bg前后台进程切换八、进程创建fork () 系统调用1.fork () 函数原理Linux 中通过 fork() 系统调用创建新进程其核心特性是一次调用两次返回父进程中fork() 返回新创建子进程的 PID大于 0子进程中fork() 返回 0若创建失败如系统资源不足返回 - 1。fork() 创建子进程时会复制父进程的 PCB、虚拟内存空间代码段、数据段、堆、栈、文件描述符等资源但采用写时复制Copy-On-Write, COW机制优化性能初始时子进程共享父进程的物理内存仅当父进程或子进程修改数据时才会复制对应内存页避免不必要的内存开销。2.fork () 函数原型与示例函数原型#include unistd.h pid_t fork(void);返回值pid_t为进程 ID 类型本质是int代码示例#include stdio.h #include unistd.h #include sys/wait.h #include stdlib.h int main(void) { pid_t pid fork(); // 创建子进程 if (pid -1) // 创建失败 { perror(fork error); exit(EXIT_FAILURE); } else if (pid 0) // 父进程执行逻辑 { printf(Parent process: PID %d, PPID %d, Child PID %d\n, getpid(), getppid(), pid); wait(NULL); // 等待子进程终止避免子进程变成僵尸态 } else // 子进程执行逻辑 { printf(Child process: PID %d, PPID %d\n, getpid(), getppid()); exit(EXIT_SUCCESS); // 子进程正常终止 } return 0; }3.关键注意事项子进程从 fork() 返回后开始执行不会重复执行 fork() 之前的代码父进程需通过 wait() 或 waitpid() 回收子进程资源否则子进程会变成僵尸态父子进程的执行顺序由进程调度器决定无固定顺序若需同步需通过信号、管道等机制实现子进程会继承父进程的文件描述符、信号掩码、工作目录等但 PID、PPID 等核心标识与父进程不同。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

网站怎么做404自己可以做视频网站吗

第一章:EF Core 学习路线图概述Entity Framework Core(简称 EF Core)是微软推出的轻量级、跨平台且可扩展的对象关系映射(ORM)框架,适用于 .NET 应用程序中的数据访问层开发。它支持多种数据库后端&#xf…

张小明 2025/12/30 1:13:11 网站建设

高特效网站网页是什么样子的

Semantic UI Calendar:现代前端开发必备的日期选择神器 【免费下载链接】Semantic-UI-Calendar mdehoog/Semantic-UI-Calendar: Semantic-UI-Calendar 是Semantic UI框架的一个日历扩展插件,它增强了原生HTML5 控件的功能,提供了日期选择器和…

张小明 2025/12/30 22:27:25 网站建设

网站开发人员的 生活合肥市建设局

AriaNg:重新定义网页版下载管理的智能解决方案 【免费下载链接】AriaNg AriaNg, a modern web frontend making aria2 easier to use. 项目地址: https://gitcode.com/gh_mirrors/ar/AriaNg 还在为复杂的下载工具配置而烦恼?AriaNg作为一款纯网页…

张小明 2025/12/30 18:24:14 网站建设

为什么收不到自己网站长沙seo网络优化

如何用 Unity3D 打造实时数字孪生系统?从建模到数据驱动的实战全解析在智能制造的浪潮中,你是否曾为传统监控界面单调的数据表格和静态画面感到无力?当设备突发故障时,运维人员只能对着一组跳动的数字猜测问题所在——这种“盲人摸…

张小明 2025/12/31 5:55:25 网站建设

转化率的网站设计网站运营公司哪家值得推荐

9个AI论文工具,专科生轻松搞定毕业论文! AI 工具如何改变论文写作的未来 在当今这个信息爆炸的时代,学术写作已经成为许多专科生必须面对的挑战。无论是毕业论文还是课程作业,撰写一篇结构严谨、内容详实的文章都是一项复杂而耗时…

张小明 2025/12/27 20:57:22 网站建设

深圳做手机网站设计杭州做兼职网站建设

在大模型时代,如何让 AI 系统更准确、更高效地回答用户问题,是开发者和研究者共同关注的核心议题。传统的 RAG(Retrieval-Augmented Generation,检索增强生成) 技术虽然显著提升了模型的事实准确性,但在面对…

张小明 2025/12/27 20:55:19 网站建设