摘要:
前言 一、人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 —— 自在。 第二位上场的是和我们一起学习的小白程序猿 —— 逍遥。 二、算数运算符简介 C语言的算数运算符,是用来完成基本的算术运算的符号。 按操作数个数可分为一元运算符(含一个操作数)和二元运算符(含两个操作数)。 一元运算符 阅读全文
摘要:
前言 一、人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 —— 自在。 第二位上场的是和我们一起学习的小白程序猿 —— 逍遥。 二、基本数据类型 1、整型 C语言中的整型数据如下表所示: | 数据类型 | 含义 | 长度(字节) | 取值范围(有符号) | 取值范围(无符号) | | : 阅读全文
摘要:
一、为什么要线程同步 在Linux 多线程编程中,线程同步是一个非常重要的问题。如果线程之间没有正确地同步,就会导致程序出现一些意外的问题,例如: 竞态条件(Race Condition):多个线程同时修改同一个共享变量,可能会导致不可预测的结果,因为线程的执行顺序是不确定的。 死锁(Deadloc 阅读全文
摘要:
一、人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 —— 自在。 第二位上场的是和我们一起学习的小白程序猿 —— 逍遥。 二、C语言简介 C语言是一种高级语言,运行效率仅次于汇编,支持跨平台 C语言是学习其他高级语言的基础,如C++、Java和Python 三、编程环境 1、在线编译 百 阅读全文
摘要:
一、线程简介 线程是参与系统调度的最小单位。它被包含在进程之中,是进程中的实际运行单位。 一个进程中可以创建多个线程,多个线程实现并发运行,每个线程执行不同的任务。 每个线程都有其对应的标识,称为线程 ID,线程 ID 使用 pthread_t 数据类型来表示。 二、线程的创建 线程是轻量级的并发执 阅读全文
摘要:
一、共享内存是什么 在Linux系统中,共享内存是一种IPC(进程间通信)方式,它可以让多个进程在物理内存中共享一段内存区域。 这种共享内存区域被映射到多个进程的虚拟地址空间中,使得多个进程可以直接访问同一段物理内存区域中的数据,从而实现进程间的高速数据交换和通信。 二、共享内存的原理 共享内存基于 阅读全文
摘要:
什么是消息队列? 假设你是一个快递员,你需要将货物从一个仓库运到另一个仓库。但是你发现自己的时间不够用,需要另外请一个人来帮忙。那么,你们之间如何进行协作呢? 一种方式是直接将货物全部交给对方,但这样存在风险:对方可能会出现问题,导致货物丢失或损坏。 而另一种更安全的方式是,你将货物分批发送给对方, 阅读全文
摘要:
一、什么是信号? 信号就像是一个突然的电话铃声,它会打断正在进行的程序并引起其注意。 在Linux系统中,信号是一种软件中断,它通常是异步发生的,可以用来通知进程某个事件已经发生。。每个信号都有一个唯一的编号,编号从1开始。进程可以通过注册信号处理函数来处理信号。 二、信号的分类 Linux系统中的 阅读全文
摘要:
Linux进程间通信通常使用的方式有很多种,其中比较常用的包括管道(pipe)和 FIFO(命名管道)。本文将介绍这两种通信方式的基本概念,并用C语言编写示例代码,来说明如何在两个进程之间使用这些IPC机制进行通信。 管道(pipe) 管道是一种半双工的通信方式,用于父进程和子进程之间的通信。在 L 阅读全文
摘要:
Linux操作系统是一种多任务、多用户的操作系统,这意味着它可以同时运行多个进程,每个进程都可以执行不同的任务。 在本文中,我们将介绍如何在Linux系统中创建和销毁进程。 进程的创建 在Linux系统中,进程的创建可以通过fork()系统调用来实现。 fork()函数将当前进程复制一份,创建一个新 阅读全文