跳到主要内容
极客日志极客日志
首页博客AI提示词GitHub精选代理工具
搜索
|注册
重置
编程语言 / C

标签

全部标签AIGPT-image-2javaNode.jsNuctPayPPT制作React NativeRNSaaSVScodeWeChat大前端算法

分类

全部分类
编程语言
PythonJavaScriptTypeScriptJavaKotlinGo / GolangRustC++CC#F#PHPRubySwiftObjective-CScalaClojureElixirErlangHaskellDartLuaPerlRJuliaMATLAB / OctaveSQLShell / BashPowerShellHTML / CSSZigNimCrystalGroovyVisual Basic .NETSolidity汇编

排序

最新更新最新发布最多浏览最多点赞
Linux 多线程:线程创建、等待与终止详解
C

Linux 多线程:线程创建、等待与终止详解

Linux 多线程控制主要涵盖线程创建、等待及终止机制。通过 pthread_create 函数可创建新线程并设置属性,pthread_self 获取当前线程 ID。pthread_join 用于阻塞等待线程结束并获取返回值,解决僵尸线程问题。线程终止可通过 return、pthread_exit 或 pthread_cancel 实现,注意 exit 会终止整个进程。底层基于 NPTL 库,利用 clone 系统调用创建轻量级进程,维…

RustyLab发布于 2026/2/5更新于 2026/4/26252 浏览238 点赞约 6 分钟阅读
Linux 进度条实现:详解回车换行与缓冲区机制
C

Linux 进度条实现:详解回车换行与缓冲区机制

Linux 下 C 语言进度条实现涉及回车换行符差异、标准输出缓冲区管理及刷新机制。文章通过倒计时示例演示光标回退技巧,随后提供基于回调函数的完整进度条代码,涵盖 Makefile 构建、ANSI 颜色控制及动态更新逻辑。

云朵棉花糖发布于 2026/2/5更新于 2026/4/253098 浏览201 点赞约 20 分钟阅读
Linux 进程优先级与调度机制详解
C算法

Linux 进程优先级与调度机制详解

Linux 进程优先级由 PRI 和 NI 值决定,范围分别为 [60, 99] 和 [-20, 19]。通过 ps、top、nice 等命令可查看或调整优先级。内核采用 O(1) 调度算法,利用运行队列(runqueue)、活动队列(active)和过期队列(expired)实现高效进程调度。进程切换涉及保存和恢复硬件上下文数据。

beaabea发布于 2026/2/5更新于 2026/4/253339 浏览338 点赞约 22 分钟阅读
Linux 信号处理流程与操作系统中断机制解析
C

Linux 信号处理流程与操作系统中断机制解析

Linux 信号处理涉及进程接收信号后的处理时机与方式,包括内核态与用户态切换、信号捕捉流程及默认动作。操作系统运行依赖硬件中断(如键盘、网卡)和时钟中断驱动,通过中断向量表调度任务。系统调用基于软中断实现,利用虚拟地址空间区分权限。写时拷贝与缺页中断优化内存管理。本质上,操作系统是依赖中断触发的死循环代码集合,通过硬件中断被动响应事件并主动调度资源。

月光旅人发布于 2026/2/5更新于 2026/4/263141 浏览14 点赞约 33 分钟阅读
深入理解 Linux 进程:从概念、fork 创建到内核状态
C

深入理解 Linux 进程:从概念、fork 创建到内核状态

Linux 进程是操作系统资源分配的基本单位。文章辨析程序、进程与操作系统的关系,详解 PCB(task_struct)结构体及其包含的标识符、状态、内存指针等关键信息。通过 fork 系统调用演示父子进程创建原理,包括写时拷贝机制及返回值规则。重点解析 Linux 内核中七种进程状态(R、S、D、T、t、X、Z),结合实操代码说明状态切换条件及孤儿进程、僵尸进程的处理逻辑,帮助读者掌握进程管理的底层原理与实战技巧。

宁静发布于 2026/2/5更新于 2026/4/261256 浏览93 点赞约 40 分钟阅读
Linux 基础 IO(三):文件描述符与重定向
C

Linux 基础 IO(三):文件描述符与重定向

Linux 文件描述符是进程打开文件的整数索引,通过 fd_array 关联 struct file。进程默认拥有 0、1、2 三个标准描述符。重定向通过关闭原描述符并打开新文件或复制描述符实现。dup2 函数可高效完成描述符拷贝。标准输出与错误流区别在于重定向行为不同。

橘子海发布于 2026/2/5更新于 2026/4/265975 浏览100 点赞约 25 分钟阅读
数据结构:堆的原理与 C 语言实现
C算法

数据结构:堆的原理与 C 语言实现

综述由AI生成堆是满足特定顺序性质的完全二叉树,通常用数组实现。介绍堆的分类(大顶堆与小顶堆)、节点索引关系及核心操作(初始化、插入、删除、释放)。通过 C 语言代码演示了堆结构体的定义、动态内存管理、上浮与下沉调整算法的具体实现。最后分析了堆在优先队列、Top-K 问题及堆排序中的应用场景。

极客工坊发布于 2026/2/4更新于 2026/4/261103 浏览333 点赞约 18 分钟阅读
数据结构入门:基于数组的栈结构实现详解
C算法

数据结构入门:基于数组的栈结构实现详解

综述由AI生成栈这种后进先出(LIFO)的数据结构概念,重点讲解了使用数组作为底层存储的实现方式。内容涵盖栈的定义、初始化、销毁、入栈、出栈、取栈顶元素及获取数据个数等核心操作。通过 C 语言代码示例展示了动态扩容机制及内存管理细节,帮助读者理解顺序表在栈中的应用原理及时间空间复杂度优势。

邪神洛基发布于 2026/2/4更新于 2026/4/258650 浏览504 点赞约 18 分钟阅读
数据结构与算法:单链表综合运用(合并、分割与约瑟夫环)
C算法

数据结构与算法:单链表综合运用(合并、分割与约瑟夫环)

单链表操作涵盖合并有序链表、分割链表及环形链表约瑟夫问题。合并利用哨兵位简化插入逻辑;分割通过双链表分类处理并防止死循环;约瑟夫问题结合循环计数实现元素出队。掌握哨兵位、指针移动及内存管理技巧,有助于夯实数据结构基础,提升面试竞争力。

孤勇者发布于 2026/2/4更新于 2026/4/255637 浏览21 点赞约 9 分钟阅读
Linux 进程控制:深入理解进程程序替换与 exec 系列函数
C

Linux 进程控制:深入理解进程程序替换与 exec 系列函数

综述由AI生成Linux 进程程序替换通过 exec 系列系统调用实现,将磁盘上的新程序加载到当前进程地址空间覆盖原有代码和数据。替换原理、fork 后子进程替换流程、加载器概念以及 execl/execv/execle/execve/execvp/execvpe 六个库函数和一个系统调用的区别与用法。重点讲解了如何传递命令行参数与环境变量,包括使用自定义环境变量表或继承父进程环境,并展示了 C 语言调用 C++ 或其他语言程序的示例。

292440837发布于 2026/2/4更新于 2026/4/256823 浏览281 点赞约 23 分钟阅读
Linux 网络编程实战:TCP/IP 协议栈与 UDP 通信
C

Linux 网络编程实战:TCP/IP 协议栈与 UDP 通信

综述由AI生成介绍 Linux 网络编程基础,涵盖 TCP/IP 协议分层模型、报文打包与解包过程、网络字节序及 UDP 通信接口。通过服务端与客户端的代码实现,演示了套接字创建、地址绑定、数据发送与接收的核心流程,帮助理解网络通信原理并掌握 Socket 编程实践。

疯疯癫癫发布于 2026/2/4更新于 2026/4/258448 浏览175 点赞约 23 分钟阅读
Linux 基础 IO 系列:文件本质与“一切皆文件”哲学
C

Linux 基础 IO 系列:文件本质与“一切皆文件”哲学

Linux 文件不仅指磁盘上的数据,还包括设备、进程等资源。阐述文件的狭义定义(内容 + 属性)与广义定义(一切皆文件),解析进程与操作系统在文件操作中的角色,介绍统一接口降低开发难度的设计哲学,以及内核中 struct file 和 struct file_operations 的实现逻辑。通过对比 Linux 与 Windows 模型,帮助读者深入理解 Linux IO 基础。

协议工匠发布于 2026/2/4更新于 2026/4/262188 浏览585 点赞约 21 分钟阅读
C

Linux 信号处理:可重入函数与安全实践

Linux 信号处理要求处理函数使用可重入函数,避免调用 printf、malloc 等不可重入函数导致数据错乱或崩溃。可重入函数指被异步打断后重入仍能正确执行,依赖局部变量而非全局状态。常见不可重入函数包括 strtok、asctime 及动态内存分配函数。编写安全信号处理函数需遵循禁用全局变量、避免动态内存、仅调用可重入函数、使用 volatile sig_atomic_t 保护标志位等原则。通过对比 unsafe 和 safe 实…

道系青年发布于 2026/2/4更新于 2026/4/263127 浏览594 点赞约 13 分钟阅读
从冯诺依曼体系结构到进程管理详解
C算法

从冯诺依曼体系结构到进程管理详解

从冯诺依曼体系结构出发,解析计算机硬件数据流动机制,阐述操作系统作为软硬件资源管理者的核心作用。重点介绍进程的概念定义、内核视角下的 PCB(进程控制块)及 Linux 下的 task_struct 结构体,并通过 ps、top 命令及 /proc 目录说明进程查看方法,帮助理解程序执行实例与系统资源调度的底层逻辑。

奶糖兔发布于 2026/2/4更新于 2026/4/273537 浏览52 点赞约 34 分钟阅读
Linux 倒计时与进度条程序实现及 Plus 升级版本
C

Linux 倒计时与进度条程序实现及 Plus 升级版本

Linux C 语言实现倒计时和进度条程序。利用 \r 实现光标回退,fflush 强制刷新缓冲区,sleep/usleep 控制时间间隔。包含基础版与使用回调函数的升级版,配合 Makefile 进行自动化构建。

监控大屏发布于 2026/2/4更新于 2026/4/256656 浏览600 点赞约 11 分钟阅读
Linux 内核设计的核心思想与架构原则
C算法

Linux 内核设计的核心思想与架构原则

综述由AI生成Linux 内核设计遵循一切皆文件、统一抽象层及模块化分层三大核心原则。通过将所有系统资源抽象为文件描述符,实现接口统一;利用虚拟文件系统(VFS)屏蔽不同文件系统的差异;采用洋葱模型分层架构,明确系统调用、核心管理、VFS、具体文件系统及设备驱动的职责边界。这种设计降低了编程复杂度,提升了扩展性与维护性,使 Linux 能适配多种硬件与文件系统并支持长期演进。

山野来信发布于 2026/2/4更新于 2026/4/258403 浏览254 点赞约 15 分钟阅读
Linux 进程创建与终止:fork 原理与退出机制实战
C算法

Linux 进程创建与终止:fork 原理与退出机制实战

Linux 进程管理核心在于创建与终止。fork 系统调用通过写时拷贝技术高效复制进程,父子进程共享代码段,数据段按需分离。进程终止涉及资源释放,可通过 return、exit 或_exit 实现,需注意缓冲区刷新差异。退出码用于反馈执行状态,父进程需回收子进程避免僵尸进程。掌握这些机制是理解多任务编程的基础。

灵魂摆渡发布于 2026/2/3更新于 2026/4/263 浏览0 点赞约 14 分钟阅读
Linux 工程化实战:构建你的第一个命令行工具项目
C

Linux 工程化实战:构建你的第一个命令行工具项目

Linux 工程化实战教程,涵盖从环境搭建、C 语言编码、模块化拆分到 Makefile 自动化构建、GDB 调试、Bash 脚本集成、Python 辅助及 Git 版本管理的完整流程。通过构建一个简单的命令行工具,帮助开发者理解真实项目的组织方式,掌握工程化思维,实现从写代码到做程序的转变。

极客零度发布于 2026/2/3更新于 2026/4/278 浏览0 点赞约 111 分钟阅读
Linux 底层核心精讲:环境变量、命令行参数与程序地址空间
C算法

Linux 底层核心精讲:环境变量、命令行参数与程序地址空间

综述由AI生成环境变量是操作系统运行环境的隐形配置,通过 PATH、HOME 等变量管理全局状态。命令行参数为程序提供外部输入,区分常规命令与内建命令的执行机制。程序地址空间划分了代码、数据、堆栈区域,虚拟地址通过页表映射至物理内存,配合写时拷贝机制实现进程隔离与优化。

颠三倒四发布于 2026/1/30更新于 2026/4/263 浏览0 点赞约 14 分钟阅读
C 语言排序算法:快速排序详解与优化变式
C算法

C 语言排序算法:快速排序详解与优化变式

综述由AI生成快速排序是常用的高效排序算法。文章详解了基于 Hoare 分区的初阶实现,包括基准值选取、双指针交换及区间分割逻辑。针对最坏情况提出了三数取中优化,避免极端数据导致性能下降。高阶部分引入小区间优化,当区间较小时切换至堆排序以提升效率。此外还展示了非递归实现方案,利用栈结构模拟递归过程以防止栈溢出。代码涵盖完整 C 语言实现细节。

随缘发布于 2026/1/26更新于 2026/4/266 浏览0 点赞约 23 分钟阅读
上一页下一页