自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

记录点点滴滴

接受自我平凡, 但不甘于自我平庸

  • 博客(22)
  • 资源 (1)
  • 收藏
  • 关注

原创 Linux系统编程手册 错误 undefined reference to `usageErr‘ errExit errExit getLong cmdLineErr collect2: erro

/tmp/ccJxsZJ1.o: In function `main':seek_io.c:(.text+0x4a): undefined reference to `usageErr'seek_io.c:(.text+0x86): undefined reference to `errExit'seek_io.c:(.text+0x11d): undefined reference to ...

2020-03-29 16:51:36 1231 3

原创 信号量 信号量的初始化 信号量 P 操作 sem_init sem_wait 信号量的 V 操作 获取信号量的计数值 信号量的销毁 有名信号量的打开或创建 信号量的关闭 信号量的删除

信号量信号量的概念 信号量广泛用于进程或线程间的同步和互斥, 信号量本质上是一个非负的整数计数器, 它被用来控制对公共资源的访问 编程时可根据操作信号量值的结果判断是否对公共资源具有访问的权限, 当信号量值大于0 时, 则可以访问,否则将阻塞 PV原语是对信号量的操作,一次P操作使信号量 sem 减1,一次V 操作使信号量 sem 加1...

2020-03-28 19:59:19 5752

原创 互斥和同步概述 互斥锁 pthread_mutex_init() pthread_mutex_lock() pthread_mutex_trylock() pthread_mutex_unlock()

互斥和同步概述 在多任务操作系统中,同时运行的多个任务可能 都需要访问/使用同一种资源 多个任务之间有依赖关系,某个任务的运行依赖于另一个任务 同步和互斥就是用于解决这两个问题互斥: 一个公共资源同一时刻只能被一个进程或线程使用,多个进程或线程不能同时使用公共资源 POSIX 标准中进程和线程同步和互斥的方法,主要有信号量和互...

2020-03-28 18:17:55 1118

原创 GTK+应用程序中创建多线程 canberra-gtk-module error:gtk/gtk.h: No such file or directory #include gtk/gtk.h

一般 GUI 应用程序默认只有一个执行线程, 每次只执行一个操作, 如果某个操作耗时较长, 则用户界面会出现冻结的现象 所以若某个操作的时间比较长一般会创建线程去处理 GTK+应用程序中创建多线程 除了通过 POSIX 线程函数 pthread_create() 创建线程外 ,实际编程时 ,还可以通过 GTK+ 线程函数 g_thread_create()...

2020-03-28 15:17:28 1716

原创 线程的取消 线程的取消状态 线程取消点 验证线程被取消时 系统自动调用线程清理函数 线程的取消类型 当线程执行以下动作时会调用清理函数 线程退出清理函数  弹出清理函数

线程的取消#include <pthread.h>/* *功能: * 取消线程 *参数: * thread:目标线程 ID *return: * 成功:0 * 失败:出错编号 */int pthread_cancel(pthread_t thread); pthread_cancel 函数的实质是发信号给目标线程 thread, 使目标线...

2020-03-28 13:15:16 281

原创 线程等待 验证 pthread_join 的阻塞效果 pthread_detatch pthread_exit 验证 pthread_join 接收线程的返回值 线程分离 线程退出

线程等待#include <pthread.h>/* *功能: * 等待子线程结束, 并回收子线程资源 *参数: * thread: 被等待的线程号 * retval: 用来存储线程退出状态的指针的地址 *return: * 成功:0 * 失败:非0 */int pthread_join(pthread_t thread, void **retv...

2020-03-27 21:01:15 520

原创 共享内存 共享内存的特点 共享内存示意图 获得一个共享存储标识符 共享内存映射(attach) 共享内存控制 解除共享内存映射(detach)

共享内存概述 共享内存允许两个或者多个进程共享给定的存储区域 共享内存的特点: 共享内存是进程间共享数据的一种最快的方法 一个进程向共享的内存区域写入了数据,共享这个内存区域的所有进程就可以立刻看到其中的内容 使用共享内存要注意的是多个进程之间对一个给定存储区访问的互斥 若一个进程正在向共享内存区写数据...

2020-03-27 13:20:29 584

原创 消息队列 消息队列的特点  ftok 函数 MSG 发送消息msgsend 接收消息 msgrcv msgctl控制

消息队列概述 消息队列是消息的链表, 存放在内存中, 由内核维护 消息队列的特点 : 消息:有类型 消息:有格式 可实现消息的随机查询 允许一个或多个进程向它写入或者读取消息 从消息队列中读出消息,消息队列中对应的数据都会被删除 每个消息队列都有消息队列标识符, 消息队列的标识符是唯一...

2020-03-26 17:01:19 444

原创 管道 命名管道 无名管道的创建 pipe 函数  close_on_exec 标志位 文件描述符概述 文件描述符的复制  dup2 函数 dup 函数

管道 命名管道 管道(pipe)又称无名管道 无名管道是一种特殊类型的文件, 在应用层体现为两个打开的文件描述符 管道是最古老的 UNIX IPC 方式, 其特点是: 半双工, 数据在同一时刻只能在一个方向上流动 数据只能从 管道的一端写入, 另一端读出 写入管道中的数据遵循 先入先出 的规则 ...

2020-03-23 16:45:13 904

原创 信号 可重入函数 常见的可重入函数列表 信号集信号阻塞集 sigemptyset 函数 sigdelset函数 sigaddset函数 sigfillset 函数 sigismember函数

可重入函数 可重入函数:函数可以由多个任务并发使用, 而不必担心数据错误 编写可重入函数: 不使用( 返回) 静态的数据、全局变量( 除非用信号量互斥) 不调用动态内存分配、 释放的函数 不调用任何不可重入的函数( 如标准 I/O 函数) 注: ...

2020-03-22 22:21:35 1190

原创 信号的基本操作 kill 函数 父进程给子进程发送信号 验证 signal 函数的返回值 alarm 函数 raise 函数 abort 函数 pause 函数 进程接收到信号后的处理方式

信号的基本操作 kill 函数#include <sys/types.h>#include <signal.h>/* * 功能: * 给指定进程发送信号 * 参数: * pid: * pid > 0: * 将信号传送给进程 ID 为 pid 的进程 * pid = 0: * 将信号传...

2020-03-22 20:04:30 1523

原创 信号概述  硬件异常将产生信号 进程间通信概述 进程间通信 进程间通信功能 Linux 操作系统支持的主要进程间通信的通信机制 linux 进程间通信(IPC)由以下几个部分发展而来 数据传输 信号

进程间通信概述 进程间通信(IPC:Inter Processes Communication) 进程是一个独立的资源分配单元 不同进程(这里进程指用户进程) 之间的资源是独立的,没有关联,不能在一个进程中直接访问另一个进程的资源(例如打开的文件描述符) 进程不是孤立的, 不同的进程需要进行信息的交互和状态的传递...

2020-03-22 11:17:56 191

原创 进程退出清理 atexit函数 vfork 函数 system 函数 创建子进程先执行, 父进程挂起 创建子进程与父进程共用一个地址空间

进程退出清理#include <stdlib.h>/* * 功能: * 注册进程正常结束前调用的函数,进程退出执行注册函数 * 参数: * function:进程结束前,调用函数的入口地址 * 一个进程中可多次调用atexit函数注册清理函数,正常结束前调用函数的顺序和注册时的顺序相反 */int atexit(void(*function)(void...

2020-03-21 19:29:04 455

原创 进程的挂起 进程的等待 进程的终止 特殊进程 孤儿进程 守护进程 sleep函数  exit 函数  _exit函数 wait 函数 waitpid 函数

进程的挂起 进程在一定的时间内没有任何动作, 称为进程的挂起 #include <unistd.h>/* * 功能: * 进程挂起指定的秒数,直到指定的时间用完或 收到信号才解除挂起 * return: * 进程挂起到sec指定的时间 返回0 * 有信号中断 返回剩余秒数 * 注意: * 进程挂起指定的秒数后程序并不...

2020-03-21 17:09:42 403

原创 进程控制 进程号 父进程号 进程组号 标准 I/O 提供三种类型的缓冲 进程的创建 fork 函数 创建一个子进程实现多任务 验证父子进程分别有各自独立的地址空间 验证子进程继承父进程的缓冲区

进程控制 进程号 每个进程都由一个进程号来标识, 其类型为 pid_t, 进程号的范围: 0~32767( 2^15 ) 进程号总是唯一的, 但进程号可以重用 当一个进程终止后, 其进程号就可以再次使用了 在 linux 系统中进程号由 0 开始 进程号为 0 及 1 的进程...

2020-03-19 20:55:25 312

原创 进程的替换 exec 函数族 getenv函数 execlp函数  execv函数 execvp函数execve函数

进程概述 进程的定义 程序: 程序是存放在存储介质上的一个可执行文件 进程: 进程是程序的执行实例, 包括程序计数器、 寄存器和变量的当前值 程序是静态的, 进程是动态的 程序是一些指令的有序集合, 而进程是程序执行的过程 进程的状态是变化的, 其包括...

2020-03-18 23:13:51 293

原创 Makefile 书写规则 规则举例 规则的语法 通配符 文件搜寻 伪目标 多目标 静态模式 自动生成依赖性

Makefile 里有什么 Makefile :显式规则、隐晦规则、变量定义、文件指示,注释 显式规则 makefile 明显指出,要生成的文件,文件的依赖文件,生成的命令 隐晦规则 make 有自动推导的功能 变量定义 定义一系列的变量(字符串),当执行,变量都会被扩展到相应的引用位置上...

2020-03-10 14:43:58 224

原创 Makefile 总述 Makefile 里有什么 环境变量 MAKEFILES 引用其它的 Makefile Makefile 的文件名 环境变量 MAKEFILES

Makefile 里有什么 Makefile :显式规则、隐晦规则、变量定义、文件指示,注释 显式规则 makefile 明显指出,要生成的文件,文件的依赖文件,生成的命令 隐晦规则 make 有自动推导的功能 变量定义 定义一系列的变量(字符串),当执行,变量都会被扩展到相应的引用位置上...

2020-03-10 10:49:22 365

原创 Makefile 概述 程序的编译和链接 介绍 如何工作的 自动推导

概述 工程中的源文件很多,一般都是按类型、功能、模块分别放在各个目录中 makefile 定义了一系列的规则来指定,哪些文件先编译,哪些文件后编译,哪些文件重新编译,还有些进行更复杂的功能操作 makefile 好处:“自动化编译”,只需要 make 命令,整个工程完全自动编译,提高了开发的效率 make :解释 makefile 中指令的命令...

2020-03-09 15:03:07 289

原创 Linux内核 下载外网资源 如何高速下载国外资源 快速下载Linux内核

类似的资源都可以这样下载 我在官网下载Linux内核非常慢,简直比坑盘还慢 一样点击这下载 进入下载地方,并停止下载 把这个下载地址复制下来https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.5.7.tar.xz 复制到这里面,点击确认就可以 下载速...

2020-03-05 20:36:43 1305

原创 Linux LED字符设备驱动 地址映射 ioremap 函数 iounmap 函数 I/O 内存访问函数

地址映射 MMU( MemoryManage Unit):内存管理单元 完成虚拟空间到物理空间的映射 内存保护,设置存储器的访问权限,设置虚拟存储空间的缓冲特性 地址映射:虚拟空间到物理空间的映射 虚拟地址(VA ,Virtual Address) 物理地址(PA ,P...

2020-03-04 20:20:57 970

原创 Linux 内核启动流程

链接脚本 vmlinux.lds// linux-5.5.4/ arch/arm/kernel/vmlinux.lds.S/* SPDX-License-Identifier: GPL-2.0 *//* ld script to make ARM Linux kernel * taken from the i386 version by Russell King * Writt...

2020-03-02 21:02:20 478

hbase-2.0.5-bin.tar.gz

hbase-2.0.5-bin.tar.gz

2022-01-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除