- 博客(16)
- 收藏
- 关注
原创 Linux C任务计数器实现-信号实现
感觉定义一个好的结构体,可以实现很强大的功能。本程序是利用信号里面的知识来实现。功能是多任务定时器,有多个定时器,每个定时器都可以实现自己的功能。每个定时器返回自己的id,通过id来操控定时器任务取消,等待定时器结束anytimer.h#ifndef ANYTIMER_H__#define ANYTIMER_H__#define JOB_MAX 1024typedef void at_addjob_t(void*);int at_addjob(int sec,at_addjob_t
2022-05-03 19:05:17
263
原创 Linux C高级io-有限状态机
1,非阻塞io流程图:1,rl-wr-rr-wl 可以变换成 2,rl-wr rr-wl#include <stdio.h>#include <stdlib.h>#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#include <unistd.h>#include <errno.h>#define TTY1 "/dev/tt.
2022-04-27 11:02:06
1871
原创 c语言各种字符串操作函数实现
1,strncpy实现按照man strncpy官方实现版本 char *strncpy(char *dest, const char *src, size_t n) { size_t i; for (i = 0; i < n && src[i] != '\0'; i++) dest[i] = src[i]; for ( ; i < n; i++) dest[i] = '\0';
2022-04-26 09:43:25
733
原创 LinuxC多线程应用
1,简单线程程序的创建线程的调度取决于调度器的策略,线程没有父子之称,是兄弟关系。有时候主线程先退出,那么次线程可能执行不到。#include <stdio.h>#include <stdlib.h>#include <pthread.h>#include <string.h>#include <unistd.h>static void * func(void *arg){ puts("thread is work
2022-04-20 16:53:58
303
原创 链表的一些简单实现
学习了结构体和指针后,觉得自己应该要写一些东西的必要了。对于函数传值和传地址有了一些简单的了解。巩固了一些简单的编程方法,其中出现了好几次segment default。要了解指针使用了存放地址的,什么类型那的指针操作什么类型的数。先附上代码吧,然后一步一步解释#include<stdio.h>#include <stdlib.h>#include...
2019-01-31 13:59:19
123
转载 TCP三次握手/四次握手
今天看了一篇TCP的文章,内容十分丰富加深自己对计算机网络的理解 https://blog.csdn.net/qzcsu/article/details/72861891
2018-06-15 18:22:09
108
原创 简单socket程序
1,int socket(int domain,int type,int protocol) domain :AF_INET ipv4AF_UNIX 进程间通信的一种方式,命名socket特殊的,不走ip层type:SOCKET_DGRAM UDP报文SOCK_STREAM TCP报文protocol: IPPROTO_ICMP:ping命令实现报文IPPROTO_TCP ,IPPRO...
2018-03-19 21:51:24
148
原创 fl2440第一次烧录
软件程序:bootstrap-s3c2440.bin,u-boot-s3c2440.bin , linuxrom-s3c2440.bin,rootfs-ubifs.bin1)jlink连接,电源连接,串口连接,连接网线jlink操作并 出现以下信息:软件 J-Link-Command 操作J-Link>hPC: (R15) = 000000D4, CPSR = 600000D3 (SVC m...
2018-03-17 12:25:04
205
原创 配置交叉编译器1
crosstool-ng制作交叉编译器本文档基于凌云物网智科实验室文档制作本文中>>xx xx为要输入的命令1,>>mkdir crosstool>>cd crosstool>>wget http://crosstoolng.org/download/crosstool-ng/crosstool-ng-1.16.0.tar.bz2>>...
2018-03-15 21:09:12
749
原创 linux 环境下文件io
/********************************************************************************* * Copyright: (C) 2018 ligang * All rights reserved. * * Filename: file.c * Desc
2018-02-03 15:51:10
159
原创 获取一张网卡的IP地址以及子网掩码
#include #include#includeint main(int argc,char *argv){ FILE * fp; char buf[512]; char * p1; char * p2; char * p3; char *p4; char ipar[16]; char mask[32];
2018-01-27 13:50:48
718
原创 写一个多线程程序并放到后台运行
#includeincludeint g_var = 10;void* thread_worker1(void* agr){ while(1) { printf("thread_worker1 tid:[%lu],g_var++=%d\n",pthread_self(),g_var++); sleep(2); } return NULL;}void * thread_wo
2018-01-26 22:40:21
935
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人