• UNIX(编程-基础IO):09---缓冲区与设置缓冲函数(setvuf、setvbuf、fflush)

    时间:2024-03-28 10:45:35

    一、缓冲区的目的二、缓冲区的分类①全缓冲概念:当填满缓冲区后才进行实际I/O操作对于驻留在磁盘上的文件通常是由标准I/O库实施全缓存的②行缓冲概念:当遇到换行符时,才执行IO操作即使没有遇到换行符,但是缓冲区满了也进行刷新缓冲区了③无缓冲概念:不进行缓冲,直接进行IO操作注意事项:打开至终端设备的流...

  • UNIX SOCKET编程简介

    时间:2024-03-26 13:58:11

    1  .  Layered Model of NetworkingSocket  编程的层次模型如下图所示, 最上面是应用层,应用层下面的是  SOCKET API  层,再下面是传输层和网络层……  实际上,  Sockets API  层并不是一个真正定义的网络层次,但却很好的描述了  Sock...

  • UNIX高级环境编程(2)FIle I/O - 原子操作、共享文件描述符和I/O控制函数

    时间:2024-03-20 18:07:03

    引言:本篇通过对open函数的讨论,引入原子操作,多进程通信(共享文件描述符)和内核相关的数据结构。还会讨论集中常见的文件IO控制函数,包括:dup和dup2sync,fsync和fdatasyncfcntlioctl/dev/fd一、文件共享这里所说的文件共享主要指的是进程间共享打开的文件。这一节...

  • UNIX网络编程--原始套接字(二十八)

    时间:2024-03-19 08:30:36

    UNIX网络编程---原始套接字(二十八)一、概述1) 有了原始套接字,进程可以读写ICMPv4、IGMPv4和ICMPv6等分组。举例来说,ping程序就使用原始套接字发送ICMP回射请求并接受ICMP回射应答。多播路由守护程序mrouted也使用原始套接字发送和接受IGMPv4分组。2) 进程可...

  • unix环境C编程之日期时间转换

    时间:2024-03-04 10:45:59

    1、理清概念1.1、日历时间:  含义:国际标准时间1970年1月1日00:00:00以来经过的秒数。  数据类型:time_t。实际上是long的别名。1.2、tm结构时间:  含义:结构化存放时间的数据结构,方便查看。ANSI C标准称...

  • Linux与Unix shell编程指南(完整高清版).pdf

    时间:2024-03-01 14:50:57

    找到一本很详细的Linux Shell脚本教程,其实里面不光讲了Shell脚本编程,还介绍了系统的各种命令http://vdisk.weibo.com/s/yVBlEojGMQMpv本书共分五部分,详细介绍了shell编程技巧,各种UNIX命令及语法,还涉及了UNIX下的文字处理以及少量的系统管理问...

  • Unix环境高级编程(十六)进程间通信

    时间:2024-01-21 14:54:47

    进程间通信(IPC)是指能在两个进程间进行数据交换的机制。现代OS都对进程有保护机制,因此两个进程不能直接交换数据,必须通过一定机制来完成。IPC的机制的作用:(1)一个软件也能更容易跟第三方软件或内核进行配合的集成,或移植.如管道,在shell 下执行 ps –aux | grep bash。(2...

  • 《UNIX环境高级编程 第2版》读书笔记

    时间:2024-01-19 08:40:05

    CH1-2:基础知识、标准化1 文件和目录文件名:不能含/(分隔路径)和null(终止路径),255字符。目录处理:opendir() readdir() closedir()更改工作目录:chdir()2 输入输出STDIN_FILENO STDOUT_FILENO3 程序和进程进程控制:fork...

  • 《Linux/Unix系统编程手册》读书笔记7 (/proc文件的简介和运用)

    时间:2024-01-19 08:08:54

    《Linux/Unix系统编程手册》读书笔记 目录第11章这章主要讲了关于Linux和UNIX的系统资源的限制。关于限制都存在一个最小值,这些最小值为<limits.h>文件中的常量。通过cat 命令查看:lancelot@debian:~/Code/tlpi$ cat /usr/inc...

  • 《UNIX环境高级编程》笔记——3.文件IO

    时间:2024-01-17 22:35:28

    一.引言说明几个I/O函数:open、read、write、lseek和close,这些函数都是不带缓冲(不带缓冲,只调用内核的一个系统调用),这些函数不输入ISO C,是POSIX的一部分;多进程共享资源(包括文件)时,会有很多额外的烦恼,需要对共享资源、原子操作等概念深入理解,需要理解涉及的内核...

  • UNIX环境高级编程——守护进程列表

    时间:2024-01-17 15:08:01

    amd:自动安装NFS(网络文件系统)守侯进程apmd:高级电源治理Arpwatch:记录日志并构建一个在LAN接口上看到的以太网地址和ip地址对数据库Autofs:自动安装治理进程automount,与NFS相关,依靠于NISBootparamd:引导参数服务器,为LAN上的无盘工作站提供引导所需...

  • UNIX环境高级编程笔记之进程控制

    时间:2024-01-10 11:24:50

    本章重点介绍了进程控制的几个函数:fork、exec族、_exit、wait和waitpid等,主要需要掌握的是父进程和子进程之间的运行机制,怎么处理进程的正常和异常终止、以及怎么让进程执行不同的程序等知识点。下一章将进一步说明一个进程和其他进程之间的关系——会话和作业控制。...

  • linux/unix 编程手册 fork()函数

    时间:2024-01-09 12:04:04

    父进程通过fork()函数创建子进程,将父进程数据段和栈的内容拷贝到子进程中,子进程执行程序execve创建新程序,调用exit函数退出到等待wait(),挂起父进程,父子进程享用相同的程序文本段。在父进程中,fork 新创建进程的进程id,在子进程中返回0,失败-1,如果子进程更新了文件偏移量,那...

  • UNIX网络编程——UDP回射服务器程序(初级版本)以及漏洞分析

    时间:2024-01-07 20:08:04

    该函数提供的是一个迭代服务器,而不是像TCP服务器那样可以提供一个并发服务器。其中没有对fork的调用,因此单个服务器进程就得处理所有客户。一般来说,大多数TCP服务器是并发的,而大多数UDP服务器是迭代的。对于本套接字,UDP层中隐含有排队发生。事实上每个UDP套接字都有一个接收缓冲区,到达该套接...

  • UNIX环境高级编程——环境变量表读取/添加/修改/删除

    时间:2024-01-05 23:16:26

    #include <stdio.h>#include <stdlib.h>#include <string.h>int main(){char* pValue;pValue = getenv("HOME"); // 起始目录(主目录) printf("$HOME ...

  • 《UNIX环境高级编程》学习心得 二

    时间:2024-01-03 20:23:09

    窝萌来看我们看到这本书里的第一个程序 #include "apue.h" #include <dirent.h> int main(int argc, char *argv[]) { DIR *dp; struct dirent *di...

  • 【UNIX环境编程、操作系统】孤儿进程和僵尸进程

    时间:2023-12-30 12:15:37

    基本概念:在类UNIX系统中,僵尸进程是指完成执行(通过exit系统调用,或运行时发生致命错误或收到终止信号所致)但在操作系统的进程表中仍然有一个进程表表项(进程控制块PCB),处于"终止状态"的进程。这发生于子进程需要保留表项以允许其父进程读取子进程的exit status:一旦退出态通过wait...

  • UNIX网络编程——非阻塞connect

    时间:2023-12-28 19:19:58

    当在一个非阻塞的TCP套接字上调用connect时,connect将立即返回一个EINPROGRESS错误,不过已经发起的TCP三次握手继续进行。我们接着使用select检测这个连接或成功或失败的已建立条件。非阻塞的connect有三个用途:我们可以把三次握手叠加在其他处理上。完成一个connect...

  • Unix网络编程--卷二:进程间通信

    时间:2023-12-28 10:30:01

    Unix网络编程--卷二:进程间通信本书是一部Unix网络编程的经典之作!进程间通信(IPC)几乎是所有Unix程序性能的关键,理解IPC也是理解如何开发不同主机网络应用程序的必要条件。本书从对Posix IPC和System V IPC的内部结构开始讨论,全面深入地介绍了4种IPC形式:消息传递(...

  • UNIX网络编程——UNIX域套接字编程和socketpair 函数

    时间:2023-12-25 14:42:48

    一、UNIX Domain Socket IPCsocket API原本是为网络通讯设计的,但后来在socket的框架上发展出一种IPC机制,就是UNIX Domain Socket。虽然网络socket也可用于同一台主机的进程间通讯(通过loopback地址127.0.0.1),但是UNIX Do...