ICode9

精准搜索请尝试: 精确搜索
  • 静态进程池实现NTP服务器2022-08-12 08:30:25

    通过静态进程池实现NTP服务器 例程:server.c #include <stdio.h>#include <stdlib.h>#include <string.h>#include <arpa/inet.h>#include <sys/types.h>#include <sys/wait.h>#include <sys/socket.h>#include <time.h>#include <unist

  • LinuxC应用开发学习笔记(十五)--管道算法和进程间通信2022-01-12 22:33:25

    管道算法和进程间通信 管道的实现 #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <sys/wait.h> #define BUFSIZE 1024 int main() { int pd[2],len = 0; __pid_t pid; char buf[BUFSIZE]; if(pipe(pd)<0) {

  • Linux 进程间通信例程2021-12-26 18:58:12

    1、pipe  1)只能用于具有亲缘关系的进程间通信  2)半双工通信,具有相同的读写端 #include <unistd.h> #include <stdio.h> #include <stdlib.h> #include <string.h> int main(void) {     int pfd[2];     int pid;     int data = 23;          //create pipe

  • 字符设备驱动:LED内核实现方式2021-10-23 20:00:07

    1. 环境: 1.1 开发板:正点原子 I.MX6U ALPHA V2.2 1.2 开发PC:Ubuntu20.04 1.3 U-boot:uboot-imx-rel_imx_4.1.15_2.1.0_ga.tar.bz2 1.4 LInux内核:linux-imx-rel_imx_4.1.15_2.1.0_ga.tar.bz2 1.5 rootfs:busybox-1.29.0.tar.bz2制作 1.6 交叉编译工具链:gcc-linaro-4.9.4-2017.01-x86_6

  • c语言中的错误处理2021-09-23 07:02:12

    1.stdlib.h头文件即standard library标准库函数头文件,包含了c,c++语言的最常用的系统函数,该文件中还包含了C语言标准库函数的定义。 2.errno 宏 errno 宏在stdlib.h中的定义为 #define errno (*_errno()) errno 宏用于保存程序在运行中的错误代码(error code),以及用于显示错误信

  • Ubuntu下基于mmap映射区的多进程拷贝(运行成功)2021-09-20 17:01:58

    实现文件多进程拷贝。 **假设有一个超大文件,需对其完成拷贝工作。为提高效率,可采用多进程并行拷贝的方法来实现。假设文件大小为len,共有n个进程对该文件进行拷贝。那每个进程拷贝的字节数应为len/n。但未必一定能整除,我们可以选择让最后一个进程负责剩余部分拷贝工作。可使用

  • 网络编程(传结构体)2021-07-20 13:02:25

    内容同上篇:网络编程 - 西北小蚂蚁 - 博客园 (cnblogs.com)但在上一篇的基础上由只能传字符型到可以传结构体。 一、服务器代码: #include <stdio.h> #include <string.h> #include <stdlib.h> #include <sys/types.h> /* See NOTES */ #include <sys/socket.h> #include

  • 信号量2021-07-16 14:02:55

    #include <iostream> #include <sys/types.h> #include <sys/sem.h> #include <unistd.h> // 联合体 用于semctl初始化 union semun { int val; //for SETV

  • TCP通信端口复用demo2021-06-01 09:59:43

    server.c: #include <stdio.h> #include <ctype.h> #include <arpa/inet.h> #include <unistd.h> #include <stdlib.h> #include <string.h> int main(int argc, char *argv[]) { // 创建socket int lfd = socket(PF_INET, SOCK_

  • 【MySQL】perror的使用方法2021-05-26 11:33:05

      在MySQL的使用过程中遇见很多错误,比如由于操作系统引起的,文件或目录不存在,或SQL语句错误引起的。这些error会有相应的代码:error#,Errcode#。"#"代表具体的错误号。perror可以查看这些错误的详细内容。查看perror的使用方法:[root@YANG mysql]# perrorperror Ver 2.10, for pc-lin

  • 管道通信(上)2021-03-31 23:02:02

    管道通信(上) (一)概述   Linux Shell 都允许重定向,而重定向使用的就是管道。例如,ps | grep vsftpd 。管道是单向的、先进先出的、无结构的、固定大小的字节流。管道是Linux由Unix那里继承过来的进程间的通信机制,它是Unix早期的一个重要通信机制。其思想是,在内存中创建一个共享文件,

  • perror()函数的运用(详解)2021-03-15 10:29:07

    1、作用: 打印系统错误信息 2、原型 #include <stdio.h> void perror(const char *s); #include <errno.h> 3、代码: #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <stdio.h> #include <unistd.h> #include <std

  • linux线程2021-03-05 21:36:19

    /* * multithread.c * * Demonstrate use of a multi threading and scheduling using pthreads * * compile with cc multithread.c -o multithread -lrt -lpthread * */ #define _GNU_SOURCE #define _REENTRANT /* macro to ensure system calls are reentran

  • linux多线程2021-03-05 21:35:01

    /* * critical.c * * Demonstrate use of mutual exclusion using mutexes * * Upper case output indicates critical output * lower case output indicates non-critical output * * compile with cc critical.c -o critical -lrt -lpthread * */ #define _GNU_

  • C语言基础教程之错误处理2021-02-16 18:33:24

    C 错误处理 C 语言不提供对错误处理的直接支持,但是作为一种系统编程语言,它以返回值的形式允许您访问底层数据。在发生错误时,大多数的 C 或 UNIX 函数调用返回 1 或 NULL,同时会设置一个错误代码 errno,该错误代码是全局变量,表示在函数调用期间发生了错误。您可以在 <error.h>

  • C语言中的错误处理2020-12-26 16:02:48

    C 语言不提供对错误处理的直接支持,但是作为一种系统编程语言,它以返回值的形式允许您访问底层数据。在发生错误时,大多数的 C 或 UNIX 函数调用返回 1 或 NULL,同时会设置一个错误代码 errno,该错误代码是全局变量,表示在函数调用期间发生了错误。您可以在 头文件中找到各种各样的错误

  • 1|进程管理 linux l例子2020-12-19 20:32:12

    案例1:使用pipe()实现父子进程间通信,要求父进程作为写端,子进程作为读端。 #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <sys/types.h> #include <sys/wait.h> int main() { int fd[2];//定义文件描述符数组 int ret=pi

  • C语言文件的打开和关闭2020-11-02 19:01:26

    1 //文件的打开和关闭 2 #define _CRT_SECURE_NO_WARNINGS 3 #include<stdio.h> 4 #include<stdlib.h> 5 #include<string.h> 6 int Only_Read_file(FILE* fp) 7 { 8 //以只读方式打开文件 9 fp = fopen("D:/C_sum/test.txt", "r"); 10

  • Epoll在LT和ET模式下的读写方式2020-06-23 19:52:33

    转载请注明来源:https://www.cnblogs.com/hookjc/在一个非阻塞的socket上调用read/write函数, 返回EAGAIN或者EWOULDBLOCK(注: EAGAIN就是EWOULDBLOCK)从字面上看, 意思是:EAGAIN: 再试一次,EWOULDBLOCK: 如果这是一个阻塞socket, 操作将被block,perror输出: Resource temporarily un

  • C 错误处理2019-10-24 22:00:10

    参考链接:https://www.runoob.com/cprogramming/c-error-handling.html 遇到错误,大多数C或者UNIX会返回1或者NULL,同时会设置一个errno,这个errno是全局变量 所以你可以通过检查返回值是否代表错误 C语言提供了perror()、和strerror()来显示与errno相关的信息 引入头文件 #include <e

  • 彻底学会使用epoll(六)——关于ET的若干问题总结2019-10-19 14:52:20

    转自:风吹过夏天的ChinaUnix博客 6.1 ET模式为什么要设置在非阻塞模式下工作     因为ET模式下的读写需要一直读或写直到出错(对于读,当读到的实际字节数小于请求字节数时就可以停止),而如果你的文件描述符如果不是非阻塞的,那这个一直读或一直写势必会在最后一次阻塞。这样就不能

  • 出错处理2019-10-08 20:55:16

    1.错误检查 函数执行失败时,一般都会返回一个特定的值,比如-1,空指针等等。这些值只能说明有错误发生,而不能指出错误的原因。头文件errno.h定义了变量errno,它存储了错误发生时的错误码,通过错误码可以得到错误信息的描述。 程序开始执行时,变量errno被初始化为0,。很多库函数在执行过程

  • 网络编程基础之TCP学习(二)编程案例2019-09-28 19:04:50

    TCP网络编程流程如下:   实现功能:服务器端与客户端成功通讯后返回get!   服务器端程序 #include <netdb.h>#include <sys/socket.h>#include <unistd.h>#include <string.h>#include <stdio.h>#include <stdlib.h>#include <memory.h>#include <signal.h>#in

  • UNIX/Linux进程间通信IPC---管道--全总结(实例入门)2019-07-21 18:02:32

    原文链接:http://www.cnblogs.com/riasky/p/3481575.html 管道 一般,进程之间交换信息的方法只能是经由fork或exec传送打开文件,或者通过文件系统。而进程间相互通信还有其他技术——IPC(InterProcessCommunication) (因为不同的进程有不同的进程空间,我们无

  • Linux 进程间通信(system v 信号灯+system v 共享内存)实例2019-05-13 10:56:34

    https://www.linuxidc.com/Linux/2011-10/44832.htm 系统V共享内存原理 进程间需要共享的数据被放在一个叫做IPC共享内存区域的地方,所有需要访问该共享区域的进程都要把该共享区域映射到本进程的地址空间中去。系统V共享内存通过shmget获得或创建一个IPC共享内存区域,并返回相

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有