
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
本文介绍了多线程编程中的互斥概念及其实现方法。首先解释了临界资源、临界区和互斥的基本概念,指出互斥能保证同一时间只有一个线程访问共享资源。通过一个售票系统的代码示例,展示了多线程并发操作共享变量时可能出现的数据不一致问题(如票数变为负数)。文章详细分析了产生问题的原因在于非原子操作,并介绍了使用互斥量(mutex)的解决方案,包括初始化、加锁解锁操作及销毁互斥量的接口。最后给出了两种互斥量的封装方

本文系统介绍了数论中的核心概念与算法,主要包括:1. 最大公约数(gcd)与最小公倍数(lcm)的定义及欧几里得算法;2. 质数判定与筛法(埃氏筛、线性筛);3. 算术基本定理与质因数分解;4. 约数求解与欧拉函数;5. 费马小定理与乘法逆元;6. 同余方程与中国剩余定理(CRT及扩展CRT)。重点阐述了gcd与lcm的关系(gcd×lcm=ab)、欧几里得算法的时间复杂度(O(logn))、质数

文章摘要: 本文详细解析了操作系统的中断机制。硬件中断通过CPU针脚感知外设信号,由中断控制器管理多设备请求,通过中断向量表定位服务程序。时钟中断由晶振定期触发,推动进程调度。操作系统本质是一个死循环,在时钟中断驱动下运行。软中断(如系统调用)通过CPU指令触发,由标准库封装调用细节。其他异常(如缺页、除零)也转为软中断处理。最后用信号模拟实现了一个简易OS调度器,展示了中断在进程调度中的作用。全

摘要:本文详细介绍了Linux系统中的管道通信机制,包括匿名管道和命名管道。匿名管道通过pipe()函数创建,仅适用于有血缘关系的进程间单向通信,具有字节流、进程同步等特性。命名管道通过mkfifo()创建,允许无关进程通信,通过文件系统路径标识。文章深入分析了管道的工作机制、4种通信场景及特性差异,并提供了进程池的实现代码,展示了父子进程间任务分发的具体应用。最后通过命名管道实现了server-

1. 字符分类函数2. 字符转换函数3. strlen 的使用和模拟实现4. strcpy 的使用和模拟实现5. strcat 的使用和模拟实现6. strcmp 的使用和模拟实现7. strncpy 函数的使用8. strncat 函数的使用9. strncmp函数的使用10. strstr 的使用和模拟实现11. strtok 函数的使用12. strerror函数的

Linux:进程等待,wait和waitpid的介绍

针对初学者,每日练习几个题,快速上手C语言。第八天。(连续更新中)

针对初学者,每日练习几个题,快速上手C语言。第十二天。(最后一天,完结散花啦)

这篇博客主要是针对初学者关于怎么在网上刷题,以及在哪里刷题。









