E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
【APUE】
APUE
学习记录 20200706
3.12函数dup和dup2#includeintdup(intfd);intdup2(int,fd,intfd2);//返回值:若成功,返回新的文件描述符;若出错,返回-1由dup返回的新文件描述符一定是当前可用文件描述符中的最小数值。对于dup2,可以用fd2参数执行新描述符的值。如果fd2已经打开,则先将其关闭。若fs等于fd2,则dup2返回fd2,而不关闭它。否则,fd2的FD_CLOE
sySeDoC
·
2020-08-24 17:41
linux编程
APUE
学习记录 20200702
3.11原子操作追加到一个文件考虑一个进程,他要将数据追加到一个文件尾端。早期的UNIX系统版本并不支持open的O_APPEND选项,所以程序被编写程下列形式:if(lseek(fd,OL,2))/*positiontoEOF*/err_sys("lseekerror");if(write(fd,buf,100)!=100)/*andwrite*/err_sys("writeerror");对单
sySeDoC
·
2020-08-24 17:49
linux编程
APUE
学习记录 20200629
3.10文件共享UNIX系统支持在不同进程见共享打开文件。在介绍dup函数之前,先要说明这种共享。内核使用3种数据结构表示打开文件,它们之间的关系决定了在文件共享方面一个进程对另一个进程可能的影响。每个进程在进程表中都有一个记录项,记录项中包含一张打开文件描述符表,可将其视为一个矢量,每个描述符占用一项。与每个文件描述符相关联的是:a.文件描述符标志(close_on_exec);b.指向一个文件
sySeDoC
·
2020-08-24 17:47
linux编程
APUE
学习记录 20200628
3.7函数read调用read函数从打开文件中读数据。#includessize_tread(intfd,void*buf,size_tnbytes);//返回值:读到的字节数,若已到文件尾,返回0;若出错,返回-1如read成功,则返回读到的字节数。如已到达文件的尾端,则返回0.有多种情况可使实际读到的字节数少于要求读的字节数:读普通文件时,在读要求字节数之前已到达了文件尾端。当从终端设备读时,
sySeDoC
·
2020-08-24 17:11
linux编程
用C写一个web服务器(一) 基础功能
之前一直在读书,看了《CPrimerPlus》、《
APUE
》、《UNP》,第一本看完之后虽然对C的语法有了大概的了解,可是要说应用,还差得很远;后两本算是咬着牙翻完的,应用更不敢说,只是对概念有了基本的认识
weixin_34268310
·
2020-08-24 17:15
APUE
学习记录 20200708
3.13函数sync、fsync和fdatasync传统的UNIX系统实现在内核中设有缓冲区高速缓存或页高速缓存,大多数磁盘I/O都通过缓冲区进行。当向文件写入数据时,内核通常先将数据复制到缓冲区,然后排入队列,晚些时候再写入磁盘。这种方式被成为延迟写。通常,当内核需要重用缓冲区来存放其他磁盘块数据时,它会把所有延迟写数据块写入磁盘。为了保证磁盘上实际文件系统与缓冲区中内容的一致性,UNIX系统提
sySeDoC
·
2020-08-24 16:59
linux编程
APUE
学习记录 20200624
3.4函数Creat#includeintcreat(constchar*path,mode_tmode);//返回值:若成功,返回为只写打开额文件描述符;若出错,返回-1此函数等效于:open(path,O_WRONLY|O_CREAT|O_TRUNC,mode);creat的一个不足之处是它以只写方式打开所创建的文件。在提供open的新版本之前,如果要创建一个临时文件,并要先写文件,然后又读该
sySeDoC
·
2020-08-24 16:11
linux编程
APUE
学习记录 20200622~20200623
3.2文件描述符对于内核而言,所有打开的文件都通过文件描述符引用。文件描述符是一个非负整数。当打开一个现有文件或创建一个新文件时,内核向进程返回一个文件描述符。当读写一个文件时,使用open或creat返回的文件描述符,将其作为参数传送给read和write。UNIX系统shell将文件描述符0与进程的标准输入关联,文件描述符1与标准输出关联,文件描述符2与标准错误关联。在符合POSIX.1的应用
sySeDoC
·
2020-08-24 16:00
linux编程
APUE
学习记录 20200619
1.7出错处理当UNIX系统函数出错时,通常会返回一个负值。error.h中定义了errno以及可以赋予它的各种常量,这些常量都以字符E开头。对于errno应当注意两条规则:如果没有出错,其值不会被例程清除。因此,仅当函数的返回值指明出错时,才检验其值。任何函数都不会将errno值设置为,而且在error.h中定义的所有常量都不为0。C标准定义了两个函数,用于打印出错信息。#includechar
sySeDoC
·
2020-08-24 16:27
linux编程
APUE
学习记录 20200618
1.5输入和输出1.文件描述符文件描述符通常是一个小的非负整数,内核用以标识一个特定进程正在访问的文件。当内核打开一个现有文件或创建一个新文件时,都返回一个文件描述符。在读写文件时,可以使用文件描述符。2.标准输入、标准输出和标准错误每当运行一个新程序时,shell都会为其打开3个文件描述符,即标准输入、标准输出和标准错误,这三个描述符都链接到终端。3.不带缓冲的I/O函数open、read、wr
sySeDoC
·
2020-08-24 16:26
linux编程
APUE
学习记录 20200617
准备工作:
APUE
第三版源代码下载链接:http://
apue
book.com/code3e.html安装了LinuxMint虚拟机,安装vmware-tool安装libc6-devlibbsd-devmake
sySeDoC
·
2020-08-24 16:25
linux编程
linux之自己总结学习linux的资源推荐
IBM学习linux技术地址:https://www.ibm.com/developerworks/cn/views/linux/libraryview.jsp2、学习linux的途径,或者说过程1、
APUE
chen.yu
·
2020-08-23 19:43
Linux/Unix积累
实例解析shell子进程(subshell )
shell子进程的一个了解,主要包括以下几个方面1:什么是shell子进程2:shell什么情况下会产生子进程3:子进程的特点与注意事项4:$变量$$在脚本里的意义,及如何得到子进程里的进程号参考文档:
apue
沐星晨
·
2020-08-23 19:31
unix/linux
脚本编程
异步信号安全和线程安全
异步信号安全和线程安全刺猬@http://blog.csdn.net/littlehedgehog问题源自于
apue
中stevens老先生有关线程安全函数的介绍,stevens有曰:如果一个函数对于多线程来说是重入的
littlehedgehog
·
2020-08-23 17:04
Unix/Linux
Programming
将poll程序改为epoll实现
原实例在
APUE
(第三版)17.2UNIX域套接字1、使用UNIX与套接字轮询XSI消息队列(poll版,原版)123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767
weixin_34284188
·
2020-08-23 08:44
个人知识地图
一、编程语言:1、c/c++《c++primer》《STL源码剖析》《effecivec++》2、python《廖雪峰python》二、linux:《
APUE
》《UNE》v1、v2《CSAPP》《linux
Gonewithmyself
·
2020-08-22 17:47
有“空洞”的文件的C代码实现
最近看
apue
,看到了空洞文件的介绍,颇为好奇,下面来学习一下。
涛歌依旧
·
2020-08-22 15:54
S1:
C/C++
s2:
Linux编程
C——文件I/O
C笔记——文件I/O(
APUE
)库函数1,字符串读写字符fgets():原型char*fgets(char*s,intn,FILEstream),从stream流中读取1-n的字符串,遇EOF或换行符结束
Lauren..
·
2020-08-22 11:48
APUE
linux 信号signal和sigaction理解
这两天重看
APUE
看到信号,又记起来了kill并不是直接终止进程的命令,而是发信号的命令,通过发信号来控制进程状态。
SkyHandy
·
2020-08-22 10:08
apue
APUE
学习笔记——10信号——信号接口函数 signal 和 sigaction
signal函数signal函数是早起Unix系统的信号接口,早期系统中提供不可靠的信号机制。在后来的分支中,部分系统使用原来的不可靠机制定义signal函数,如Solaris10。而更多的系统采用新语义可靠信号机制,如4.4BSD。出于signal函数不同系统的不统一性,我们一般使用sigaction函数取代它。关于sigaction函数,我们在本文后面做详细介绍。函数原型:#includevo
aidixi4007
·
2020-08-22 09:04
APUE
学习笔记:Linux下signal和sigaction的使用区别
《UNIX环境高级编程》第三版,图10-20在Linux环境下的运行结果与书中所述有所不同,信号处理函数执行期间未自动屏蔽该信号,详见:信号之sigsetjmp和siglongjmp函数其原因在于:glibc2之后,如果系统定义了_BSD_SOURCE宏或_GNU_SOURCE宏的话,那么系统将通过调用sigaction函数的方式去实现signal函数,否则signal函数将遵循SystemV语义
曈默生
·
2020-08-22 09:30
APUE学习
推荐一些系统方面的书
书名涉及范围csapp数据表示、汇编、处理器、cache、虚拟地址、链接、进程、信号、线程、底层IO、套接字
apue
进程、信号、线程、底层IO、文件系统、套接字linuxc一站式学习c语言、数据结构、数据表示
飞龙
·
2020-08-22 09:07
书单
操作系统
组成原理
网络
深究标准IO的缓存
前言在最近看了
APUE
的标准IO部分之后感觉对标准IO的缓存太模糊,没有搞明白,
APUE
中关于缓存的部分一笔带过,没有深究缓存的实现原理,这样一本被吹上天的书为什么不讲透彻呢?
weixin_34357928
·
2020-08-21 22:59
关于unix下实际用户ID、有效用户ID、设置用户ID、文件所有者ID的一点理解
摘要:最近看
APUE
时为这几个ID困扰了很久,查找了很多资料后,终于感觉比较清晰了。先记在这里。或许还有些理解上的偏差,后续更正。本文主要讲述这几种ID的区别和联系。
abcdef0966
·
2020-08-21 18:04
ls 底层源码简单实现
列出一个目录中所有文件的名字,相当于在Linux/Unix终端命令行模式下键入ls命令的功能实现:#include"
apue
.h"#includeintmain(intargc,char*argv[])
FinalFantacy~
·
2020-08-21 16:06
Unix高级编程
unix环境高级编程编译方法 -
apue
最简单编译方法(第二版)
/********************************************************************************第0种-最简单实用********************************************************************************/.1.直接进入源码目录的lib目录cdlib2.执行mak
yanlaiming
·
2020-08-21 07:21
红外模块
遥控器主要是通过解码来控制红外模块,从而完成小车的行走#include"
apue
.h"#include"uart.h"voidmain(){TMOD=0x20;//timer1,auto-loadTH1
weixin_30496431
·
2020-08-21 06:34
《UNIX环境高级编程》随书代码的打开方式
最近在学习>这本书,这本书里有好多包含代码的例子.自己打代码,太费事了,就从网上下,地址是:http://www.
apue
book.com/代码下载了,然后看到书上的第1个例子--图1-3,怎么找到对应的代码内
eletricor
·
2020-08-21 06:18
《unix环境高级编程》书中源代码编译问题解决
我的系统是:linux/Ubuntu12.04源代码下载地址:http://www.
apue
book.com/src.tar.gz。下载源代码之后,就是解压到相关目录下。
wuyue五月
·
2020-08-21 05:25
unix环境高级编程源代码在ubuntu下运行
首先从http://www.
apue
book.com下载对应版本的源代码,然后解压进入目录
apue
.2e,将Make.defines.linux文件中的WKDIR=/home/sar/
apue
.2e修改为
AnSwEr不是答案
·
2020-08-21 05:36
UNIX环境高级编程
UNIX环境高级编程
《UNIX环境高级编程》源码配置——
apue
.3e 安装
话不多说,下面就来看看具体的搭建过程:1.在网上下载书中源代码,点击打开链接——www.
apue
book.com2.解压文件:tar-zxvf*.tar.gz3.cd
apue
.3e/4.make在这个过程中
松狮MVP
·
2020-08-21 05:27
Linux
linux下unix环境高级编程代码配置步骤及编译方法
1.下载源码压缩包src.3e.tar.gz点击打开链接http://
apue
book.com/code3e.html2.解压tar-zxvfsrc.3e.tar.gz3.安装libbsd-devel方法一
lancyxd
·
2020-08-21 04:04
网络编程
unix
《UNIX环境高级编程》(
APUE
) 笔记系列
博客已迁移至https://www.cnblogs.com/brianleelxt/p/13200371.html
BrianLeeLXT
·
2020-08-21 03:37
Unix/Linux
linux
网络
c语言
unix
操作系统
《UNIX环境高级编程》(
APUE
) 笔记第十五章 - 进程间通信
博客已迁移至https://www.cnblogs.com/brianleelxt/p/13225313.html
BrianLeeLXT
·
2020-08-21 03:37
Unix/Linux
《UNIX环境高级编程》(
APUE
) 笔记第十章 - 信号
博客已迁移至https://www.cnblogs.com/brianleelxt/p/13214731.html
BrianLeeLXT
·
2020-08-21 03:37
Unix/Linux
linux
操作系统
c语言
unix环境高级编程代码编译方法
首先是书中大部分程序都包含头文件
apue
.h,这是作者为了减少书中程序长度而将大多数程序需要包含的系统头文件统一包含在
apue
.h中,这样程序只需包含
apue
.h即可。
bdc789
·
2020-08-21 03:26
linux
unix环境高级编程第三版源代码编译及使用
先强调一下,笔者的开发环境是centos6.8,按照如下步骤来编译源代码,并搭建自己的开发环境:(1)下载源代码,可以去官网下载:http://
apue
book.com/code3e.html如果实在
aboboo520
·
2020-08-21 03:56
Linux
《UNIX环境高级编程》书中源代码编译环境搭建
《UNIX环境高级编程》中有很多示例代码需要包含作者自定义的头文件,如"
apue
.h"。
那一抹天空蓝
·
2020-08-21 02:58
Linux
孤儿进程与僵尸进程
晚上回来google了一下,再次参考
APUE
,认真总结一下,加深理解。2、基本概念我们知道在unix/linux中,正常情况下,子进程是通过父进程创建的,子进程在创建新的进程。子进程的结束和
小哈龙
·
2020-08-21 02:10
linux
c/c++
Java后端开发推荐书单
《Linux系统编程第2版》继续是RobertLove,比起
APUE
也是以薄见长,专门针对重要的系统调用讲
_LDL
·
2020-08-21 02:56
web
apue
编程之参考df代码写的一个简单的df命令的源代码
代码:#include#include#include#includestaticconstunsignedlonglongG=1024*1024*1024ull;staticconstunsignedlonglongM=1024*1024;staticconstunsignedlonglongK=1024;staticcharstr[20];char*kscale(unsignedlongb,u
dbtech
·
2020-08-21 02:56
apue
c
编程
apue
编程之参考df代码写的一个简单的df命令的源代码
代码:#include#include#include#includestaticconstunsignedlonglongG=1024*1024*1024ull;staticconstunsignedlonglongM=1024*1024;staticconstunsignedlonglongK=1024;staticcharstr[20];char*kscale(unsignedlongb,u
dbtech
·
2020-08-21 01:44
apue
c
编程
UNIX环境高级编程习题——第一章
第一章习题1.1在系统上验证,除了根目录外,目录.和..是不同的ls.ls..ls/.ls/..2.分析图1-6程序的输出,说明进程ID为852和853的进程发生了什么情况#include"
apue
.h"intmain
Arturia
·
2020-08-20 20:38
apue
unix
c
UNIX环境高级编程习题——第一章
第一章习题1.1在系统上验证,除了根目录外,目录.和..是不同的ls.ls..ls/.ls/..2.分析图1-6程序的输出,说明进程ID为852和853的进程发生了什么情况#include"
apue
.h"intmain
Arturia
·
2020-08-20 20:38
apue
unix
c
UNIX高级环境编程 第12章 [12.5-12.9]
可重入与异步信号安全等价(
APUE
3edition,10.6)可重入函数除了使用自己栈上的变量以外不依赖于任何环境(包括static),这样的函数就是可重入的,可以允许有该函数的多个副本同时运行线程安全
shiyang6017
·
2020-08-20 20:44
apue
UNIX高级环境编程 第12章 [12.5-12.9]
可重入与异步信号安全等价(
APUE
3edition,10.6)可重入函数除了使用自己栈上的变量以外不依赖于任何环境(包括static),这样的函数就是可重入的,可以允许有该函数的多个副本同时运行线程安全
shiyang6017
·
2020-08-20 20:43
apue
[转]
apue
源码使用
话不多说,下面就来看看具体的搭建过程:1.在网上下载书中源代码,点击打开链接——www.
apue
book.com2.解压文件:tar-zxvf*.tar.gz3.cd
apue
.3e/4.make在这个过程中
jasperyang
·
2020-08-20 20:47
apue
[转]
apue
源码使用
话不多说,下面就来看看具体的搭建过程:1.在网上下载书中源代码,点击打开链接——www.
apue
book.com2.解压文件:tar-zxvf*.tar.gz3.cd
apue
.3e/4.make在这个过程中
jasperyang
·
2020-08-20 20:47
apue
Unix环境高级编程——第一章-UNIX基础知识
1.2UNIX体系结构1、体系结构:(1)内核(2)系统调用(3)Shell、公共函数库(4)应用程序1.4文件和目录1、例:ls(l)命令的简要实现#include"
apue
.h"#includeintmain
Arturia
·
2020-08-20 20:52
c
unix
apue
Unix环境高级编程——第一章-UNIX基础知识
1.2UNIX体系结构1、体系结构:(1)内核(2)系统调用(3)Shell、公共函数库(4)应用程序1.4文件和目录1、例:ls(l)命令的简要实现#include"
apue
.h"#includeintmain
Arturia
·
2020-08-20 20:52
c
unix
apue
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他