不忘初心的专栏

分享学习的点点滴滴,欢迎交流。

排序:
默认
按更新时间
按访问量

Linux C编程常用的API函数

最近找到了一个特别好的在线Linux C API函数,给大家分享一下。 1. 字符测试函数 2. 字符串操作 3. 内存管理函数 4. 日期与时间函数 5. 数学函数 6. 文件操作函数 7. 进程管理函数 8. 文件权限控制 9. 信号处理函数 10. 接口处理函数 11....

2015-09-14 00:33:39

阅读数:2486

评论数:0

局域网LanQQ聊天项目(二)服务器和客户端整体框架的搭建

这个项目分为一个服务器、一个聊天的客户端、一个后台管理的客户端

2015-09-13 11:29:58

阅读数:1419

评论数:0

局域网LanQQ聊天项目(一)数据库与通信协议设计

在做项目之前要把整体框架搭好,对于这个项目而言,数据库的设计与服务器和客户端之间的通信协议制定至关重要。         数据库而言,数据库的制定要考虑全面,如果在中途写代码的时候发现,发现数据库表设计不合理或者是缺少字段,这样严重影响项目的进度,会做很多无用功,因此在写代码之前,一定要把数据库设...

2015-09-13 10:40:19

阅读数:1330

评论数:0

局域网LanQQ聊天项目

一、简介                在汇文上嵌入式培训课,做了这个局域网内的QQ聊天项目,收获很多,把这段经历写成博客,自己也总结一下,同时也分享一下经验。 二、项目要求 在局域网内构建功能类似于QQ的综合的聊天系统,该聊天系统主要包括以下功能:         (1) 服务端       ...

2015-09-13 10:16:51

阅读数:1345

评论数:0

Linux系统sigaction函数的使用示例

一、函数原型int sigaction(int signum, const struct sigaction *act, struct sigaction *oldact); signum参数指出要捕获的信号类型,act参数指定新的信号处理方式,oldac...

2015-09-01 16:18:59

阅读数:5941

评论数:0

Linux的信号 SIGALRM和SIGINT的使用示例

(1)SIGALRM信号的使用#include <stdio.h> #include <unistd.h> #include <stdlib.h> #include <signal.h>void asr(int nSignal) { prin...

2015-09-01 15:03:27

阅读数:6147

评论数:0

Linux系统的信号详解

一、信号类型          1) SIGHUP       2) SIGINT       3) SIGQUIT     4) SIGILL        5) SIGTRAP          6) SIGABRT      7) SIGBUS       8) SIGFPE      ...

2015-09-01 14:54:11

阅读数:1438

评论数:0

Linux C的select函数的使用

1、select函数简介int select(int maxfdp,fd_set *readfds,fd_set *writefds,fd_set *errorfds,struct timeval*timeout); 当服务器响应多个客户端连接的时候,需要定义一个线程函数,在每一个线程函数里面处理...

2015-08-31 22:57:14

阅读数:6668

评论数:1

哲学家吃饭问题 代码实现如何 避免线程死锁

问题描述:     假设有5个哲学家,他们花费一生中的时光思考和吃饭。这些哲学家共用一个圆桌,每个哲学家都有一把椅子。在桌子中央是一碗通心面,在桌子上放着5只筷子。当一个哲学家思考时,他与其他同事不交互。时而,哲学家会感到饥饿,并试图拿起与他相近的两只筷子(他与邻近左、右之间的筷子)。一只筷子一...

2015-08-31 21:29:23

阅读数:1445

评论数:0

Linux C打印所有的环境变量

1、在终端显示环境变量执行env命令nii@mmch:~/code$ env LC_PAPER=zh_CN.UTF-8 LC_ADDRESS=zh_CN.UTF-8 XDG_SESSION_ID=4 LC_MONETARY=zh_CN.UTF-8 TERM=xterm SHELL=/bin/bas...

2015-08-31 14:18:18

阅读数:2343

评论数:0

Linux系统文件描述符理解

1、查看系统文件描述符个数。以下是查看Linux文件描述符的三种方式:[root@localhost ~]# sysctl -a | grep -i file-max --colorfs.file-max = 392036[root@localhost ~]# cat /proc/sys/fs/f...

2015-08-31 11:01:08

阅读数:1849

评论数:0

Linux进程通信---信号量 代码实现

1、信号量使用流程(1)获得keyVal值值要一样。keyVal = ftok(PATH_SHM,PRI_SHM_ID);(2)创建信号量或打开信号量的键值nSemid = semget(keyVal,1,IPC_CREAT);(3)设置信号量 semctl(nSemid,0,SETVAL,1)(...

2015-08-30 23:57:19

阅读数:783

评论数:0

Linux进程通信---消息队列 代码实现

1、消息队列函数的使用“消息队列”是在消息的传输过程中保存消息的容器。当消息从队列内取出后,相应的消息就从队列中删除了。(1)ftok获得唯一的key值key_t ftok(const char *pathname, int proj_id);pathname就是你指定的文件名(已经存在的文件名)...

2015-08-30 23:29:17

阅读数:450

评论数:0

Linux进程通信---共享内存 代码实现

1、什么是共享内存      共享内存可以从字面上去理解,就把一片逻辑内存共享出来,让不同的进程去访问它,修改它。共享内存是在两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常安排为同一段物理内存。进程可以将同一段共享内存连接到它们自己的地址空间中,所有进程都可以...

2015-08-30 23:05:45

阅读数:1135

评论数:0

Linux进程间通信---有名管道 代码实现

一、管道通信的注意事项 (1)执行mkfifo file命令来创建一个管道文件。[admin@localhost code]$ mkfifo pipe [admin@localhost code]$ ls -l total 0 '''p'rw-rw-r-- 1 admin admin 0 8月 ...

2015-08-30 20:15:37

阅读数:1043

评论数:0

Linux进程与线程的区别和联系

1、两者区别:(1)进程是比较大的单位,一个进程可以有多个线程,一个线程只能被一个进程拥有。 (2)进程是资源分配的基本单位,线程是处理机制调度的最小单位,所有的线程共享其所属进程的所有资源与代码。 (3)线程执行过程中容易同步,而进程之间需要通信进行同步。 (4)线程共享进程数据的同时,拥...

2015-08-30 19:42:49

阅读数:542

评论数:0

强制使用处于TIME_WAIT的TCP状态的socket地址

在bind函数之前添加上这句话就可以了。int isReuse = 1; setsockopt(nSocketFd,SOL_SOCKET,SO_REUSEADDR,(const char*)&isReuse,sizeof(isReuse));

2015-08-30 18:59:24

阅读数:359

评论数:0

Linux地址信息函数:获取本端和远端的socket地址

1、在某些情况下想知道一个连接着的socket的本端地址,以及远端的socket地址,可以使用下面的两个函数。获取本端的socket地址:#include <sys/socket.h>int getsockname(int sockfd, struct sockaddr *addr, ...

2015-08-30 17:28:46

阅读数:1617

评论数:0

Linux C标准IO库函数详解 一

1、open/close open函数可以打开或者创建一个文件#include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> int open(const char *pathname, int ...

2015-08-30 14:21:37

阅读数:1263

评论数:0

Linux文件系统简介

1、文件系统里面的几个概念 超级块 块组描述符表 数据块 块位图 inode节点 inode位图 2、概念理解 (1)超级块      在Linux系统中把磁盘分成一个个的数据块来存储数据,超级块存储整个分区的系统信息,包括 块大小,文件系统版本号,上次mount的时间等等 (2)块...

2015-08-30 00:37:55

阅读数:414

评论数:0

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