
Linux系统编程
Donald Linux
日拱一卒无有尽 功不唐捐终入海
展开
-
2023-04-19 linux内核态 send_sig_info 向用户态发送信号参数,可以带参数。用户态使用sigaction(SIG_ETX, &new_sa, NULL);处理介绍数据函数
使用for_each_process 遍历所有进程。原创 2023-04-19 17:07:35 · 2363 阅读 · 0 评论 -
2023-02-03 ubuntu pc 和 linux arm进行socket通信实例测试
2.2、arm 客户端 socket_client.c。2.1、arm 服务端socket_server.c。原创 2023-02-03 11:23:05 · 696 阅读 · 0 评论 -
2022-03-31 linux 驱动C语言把配置放到一个文件,然后#include到数组里面。xxd 命令可以生成适合包含在C代码中的C数组。
一、比如一个触摸IC会有很多的config,怎么办呢?把配置放到一个文件,然后#include到数组里面。二、比如1、声明数组2、调用原创 2022-03-31 16:52:19 · 2519 阅读 · 0 评论 -
linux 驱动程序file_operations结构体学习
linux 驱动程序file_operations结构体学习一、file_operations结构体的作用是用来存储驱动内核模块提供的对设备进行各种操作的函数的指针。该结构体的每个域都对应着驱动内核模块用来处理某个被请求的事务的函数的地址。里面的成员函数是字符设备驱动程序设计的主体内容,当应用程序进行open()、write()、read()等系统调用时候内核会调用到这些函数。二、file_op...原创 2018-04-06 14:46:59 · 3821 阅读 · 0 评论 -
Linux 串口编程简介和实例学习
Linux 串口编程简介和实例学习一、无论是从linux官方直接下载的原生态内核还是任何一家芯片厂家提供的linux内核,都已经把串口驱动写好了,所以在linux串口编程中,是完全不需要动手去写串口驱动的。对于一般的程序员来说涉及比较多的是串口应用编程,这里我们就介绍一下如何调用内核提供的接口,如何进行初始化配置以及发送和接收数据。二、查看串口设备节点,在linux系统,串口的设备节点以tty*的...原创 2018-04-14 15:35:24 · 12074 阅读 · 3 评论 -
linux ftell函数(用于得到文件位置指针当前位置相对于文件首的偏移字节数)计算文件的字节大小
linux ftell函数(用于得到文件位置指针当前位置相对于文件首的偏移字节数)计算文件的字节大小一、The ftell() function obtains the current value of the file position indicator for the stream pointed to by stream.用于得到文件位置指针当前位置相对于文件首的偏移字节数。二、实例测试1...原创 2018-03-06 17:01:28 · 6189 阅读 · 0 评论 -
linux fork函数(创建一个与原来进程几乎完全相同的进程)学习实例
linux fork函数(创建一个与原来进程几乎完全相同的进程)学习实例一、fork函数简介 1、linux中,可以通过fork函数创建一个与原来进程几乎完全相同的进程,叫子进程,原来的进程叫父进程。 2、man 2 fork,fork() creates a new process by duplicating the calling process. 3、系统函数...原创 2018-03-06 11:47:29 · 867 阅读 · 0 评论 -
linux进程之exec函数族实例学习
linux进程之exec函数族实例学习一、linux中,可以用exec函数族将程序载入内存,启动一个新的进程,实现多个程序同时运行。根据指定的文件名找到可执行文件,并用它来取代调用进程的内容,换句话说,就是在调用进程内部执行一个可执行文件。二、exec函数族 int execl(const char *path, const char *arg, ...); int exe...原创 2018-03-07 14:35:57 · 1572 阅读 · 0 评论 -
liunx:pthread_cond_t条件变量pthread_cond_wait、pthread_cond_signal、pthread_cond_broadcast
liunx:pthread_cond_t条件变量pthread_cond_wait、pthread_cond_signal、pthread_cond_broadcast一、pthread_cond_t条件变量是利用线程间共享的全局变量进行同步的一种机制,主要包括两个动作:一个线程等待"条件变量的条件成立"而挂起;另一个线程使"条件成立"(给出条件成立信号)。为了防止竞争,条件变量的原创 2018-01-15 14:04:26 · 1112 阅读 · 0 评论 -
linux C语言系统编程多线程学习实例
linux C语言系统编程多线程学习实例一、测试C语言代码/* *thread_example.c : c multiple thread programming in linux *author : weifanghai *time : 2017/12/6*/#include #include #include #include #define MA原创 2017-12-07 09:14:12 · 703 阅读 · 0 评论 -
linux C语言获取随机数rand()和srand(time(NULL))介绍
linux C语言获取随机数rand()和srand(time(NULL))介绍一、在使用rand()产生随机数时,产生的是0~RAND_MAX(该值与平台有关,至少为32767,我下面测试的平台是0x7fffffff),之间的随机数,但其产生的随机数时伪随机数,默认随机数种子为0,所以每次重新运行程序,都会产生相同的随机数,如果要是每次运行时产生的随机数不同,可以以当前时间tim原创 2017-12-05 17:10:22 · 26916 阅读 · 0 评论 -
pthread_join函数介绍和使用实例
一、pthread_join函数介绍: 函数pthread_join用来等待一个线程的结束,线程间同步的操作。头文件 : #include 函数定义: int pthread_join(pthread_t thread, void **retval);描述 :pthread_join()函数,以阻塞的方式等待thread指定的线程结束。当函数返回原创 2017-10-09 17:51:13 · 67837 阅读 · 0 评论 -
linux系统编程中alarm函数的介绍和实例
一、函数简介: alarm也称为闹钟函数,它可以在进程中设置一个定时器,当定时器指定的时间到时,它向进程发送SIGALRM信号。要注意的是,一个进程只能有一个闹钟时间,如果在调用alarm之前已设置过闹钟时间,则任何以前的闹钟时间都被新值所代替。需要注意的是,经过指定的秒数后,信号由内核产生,由于进程调度的延迟,所以进程得到控制从而能够处理该信号还需要一些时间。如果有以前为进原创 2017-10-11 16:03:13 · 1283 阅读 · 0 评论