当前位置: 首页 > news >正文

Python语言零基础入门教程(二十三)

16、Python os.fpathconf() 方法

概述
os.fpathconf() 方法用于返回一个打开的文件的系统配置信息。

Unix上可用。

语法
fpathconf()方法语法格式如下:

os.fpathconf(fd, name)

参数
fd – 打开的文件的描述符。

name – 可选,和buffersize参数和Python内建的open函数一样,mode参数可以指定『r,w,a,r+,w+,a+,b』等,表示文件的是只读的还是可以读写的,以及打开文件是以二进制还是文本形式打开。这些参数和C语言中的<stdio.h>中fopen函数中指定的mode参数类似。

bufsize – 检索的系统配置的值,它也许是一个定义系统值的字符串,这些名字在很多标准中指定(POSIX.1, Unix 95, Unix 98, 和其它)。一些平台也定义了一些额外的名字。这些名字在主操作系统上pathconf_names的字典中。对于不在pathconf_names中的配置变量,传递一个数字作为名字,也是可以接受的。

返回值
返回一个打开的文件的系统配置信息。

实例
以下实例演示了 fpathconf() 方法的使用:

#!/usr/bin/python
# -*- coding: UTF-8 -*-import os, sys# 打开文件
fd = os.open( "foo.txt", os.O_RDWR|os.O_CREAT )print "%s" % os.pathconf_names# 获取最大文件连接数
no = os.fpathconf(fd, 'PC_LINK_MAX')
print "文件最大连接数为 :%d" % no# 获取文件名最大长度
no = os.fpathconf(fd, 'PC_NAME_MAX')
print "文件名最大长度为 :%d" % no# 关闭文件
os.close( fd )print "关闭文件成功!!"

执行以上程序输出结果为:

{'PC_MAX_INPUT': 2, 'PC_VDISABLE': 8, 'PC_SYNC_IO': 9, 
'PC_SOCK_MAXBUF': 12, 'PC_NAME_MAX': 3, 'PC_MAX_CANON': 1, 
'PC_PRIO_IO': 11, 'PC_CHOWN_RESTRICTED': 6, 'PC_ASYNC_IO': 10, 
'PC_NO_TRUNC': 7, 'PC_FILESIZEBITS': 13, 'PC_LINK_MAX': 0, 
'PC_PIPE_BUF': 5, 'PC_PATH_MAX': 4}文件最大连接数为 :127
文件名最大长度为 :255
Closed the file successfully!!

17、Python os.fstat() 方法

概述
os.fstat() 方法用于返回文件描述符fd的状态,类似 stat()。

Unix,Windows上可用。

fstat 方法返回的结构:

st_dev: 设备信息st_ino: 文件的i-node值st_mode: 文件信息的掩码,包含了文件的权限信息,文件的类型信息(是普通文件还是管道文件,或者是其他的文件类型)st_nlink: 硬连接数st_uid: 用户IDst_gid: 用户组 IDst_rdev: 设备 ID (如果指定文件)st_size: 文件大小,以byte为单位st_blksize: 系统 I/O 块大小st_blocks: 文件的是由多少个 512 byte 的块构成的st_atime: 文件最近的访问时间st_mtime: 文件最近的修改时间st_ctime: 文件状态信息的修改时间(不是文件内容的修改时间)

语法
fstat()方法语法格式如下:

os.fstat(fd)

参数
fd – 文件的描述符。

返回值
返回文件描述符fd的状态。

实例
以下实例演示了 fstat() 方法的使用:

#!/usr/bin/python
# -*- coding: UTF-8 -*-import os, sys# 打开文件
fd = os.open( "foo.txt", os.O_RDWR|os.O_CREAT )# 获取元组
info = os.fstat(fd)print "文件信息 :", info# 获取文件 uid
print "文件 UID :%d" % info.st_uid# 获取文件 gid
print "文件 GID  :%d" % info.st_gid# 关闭文件
os.close( fd)

执行以上程序输出结果为:

文件信息 : (33261, 3753776L, 103L, 1, 0, 0, 102L, 1238783197, 1238786767, 1238786767)
文件 UID :0
文件 GID :0

18、Python os.fstatvfs() 方法

概述
os.fstatvfs() 方法用于返回包含文件描述符fd的文件的文件系统的信息,类似 statvfs()。

Unix上可用。

fstatvfs 方法返回的结构:

f_bsize: 文件系统块大小f_frsize: 分栈大小f_blocks: 文件系统数据块总数f_bfree: 可用块数f_bavail:非超级用户可获取的块数f_files: 文件结点总数f_ffree: 可用文件结点数f_favail: 非超级用户的可用文件结点数f_fsid: 文件系统标识 IDf_flag: 挂载标记f_namemax: 最大文件长度

语法
fstatvfs()方法语法格式如下:

os.fstatvfs(fd)

参数
fd – 文件的描述符。

返回值
返回包含文件描述符fd的文件的文件系统的信息。

实例
以下实例演示了 fstatvfs() 方法的使用:

#!/usr/bin/python
# -*- coding: UTF-8 -*-import os, sys# 打开文件
fd = os.open( "foo.txt", os.O_RDWR|os.O_CREAT )# 获取元组
info = os.fstatvfs(fd)print "文件信息 :", info# 获取文件名最大长度
print "文件名最大长度 :%d" % info.f_namemax# 获取可用块数
print "可用块数 :%d" % info.f_bfree# 关闭文件
os.close( fd)

执行以上程序输出结果为:

文件信息 : (4096, 4096, 2621440L, 1113266L, 1113266L, 8929602L, 8764252L, 8764252L, 0, 255)
文件名最大长度 :255
可用块数 :1113266

19、Python os.fsync() 方法

概述
os.fsync() 方法强制将文件描述符为fd的文件写入硬盘。在Unix, 将调用fsync()函数;在Windows, 调用 _commit()函数。

如果你准备操作一个Python文件对象f, 首先f.flush(),然后os.fsync(f.fileno()), 确保与f相关的所有内存都写入了硬盘.在unix,Windows中有效。

Unix、Windows上可用。

语法
fsync()方法语法格式如下:

os.fsync(fd)

参数
fd – 文件的描述符。

返回值
该方法没有返回值。

实例
以下实例演示了 fsync() 方法的使用:

#!/usr/bin/python
# -*- coding: UTF-8 -*-import os, sys# 打开文件
fd = os.open( "foo.txt", os.O_RDWR|os.O_CREAT )# 写入字符串
os.write(fd, "This is test")# 使用 fsync() 方法.
os.fsync(fd)# 读取内容
os.lseek(fd, 0, 0)
str = os.read(fd, 100)
print "读取的字符串为 : ", str# 关闭文件
os.close( fd)print "关闭文件成功!!"

执行以上程序输出结果为:

读取的字符串为 :  This is test
关闭文件成功!!

20、Python os.ftruncate() 方法

概述
os.ftruncate() 裁剪文件描述符fd对应的文件, 它最大不能超过文件大小。

Unix, Windows上可用。

语法
ftruncate()方法语法格式如下:

os.ftruncate(fd, length)

参数
fd – 文件的描述符。

length – 要裁剪文件大小。

返回值
该方法没有返回值。

实例
以下实例演示了 ftruncate() 方法的使用:

#!/usr/bin/python
# -*- coding: UTF-8 -*-import os, sys# 打开文件
fd = os.open( "foo.txt", os.O_RDWR|os.O_CREAT )# 写入字符串
os.write(fd, "This is test - This is test")# 使用 ftruncate() 方法
os.ftruncate(fd, 10)# 读取内容
os.lseek(fd, 0, 0)
str = os.read(fd, 100)
print "读取的字符串是 : ", str# 关闭文件
os.close( fd)print "关闭文件成功!!"

执行以上程序输出结果为:

读取的字符串是 :  This is te
关闭文件成功!!

21、Python os.getcwd() 方法

概述
os.getcwd() 方法用于返回当前工作目录。

语法
getcwd()方法语法格式如下:

os.getcwd()

参数

返回值
返回当前进程的工作目录。

实例
以下实例演示了 getcwd() 方法的使用:

实例
#!/usr/bin/python
# -*- coding: UTF-8 -*-import os, sys# 切换到 "/var/www/html" 目录
os.chdir("/var/www/html" )# 打印当前目录
print "当前工作目录 : %s" % os.getcwd()# 打开 "/tmp"
fd = os.open( "/tmp", os.O_RDONLY )# 使用 os.fchdir() 方法修改目录
os.fchdir(fd)# 打印当前目录
print "当前工作目录 : %s" % os.getcwd()# 关闭文件
os.close( fd )

执行以上程序输出结果为:

当前工作目录 : /var/www/html
当前工作目录 : /tmp

22、Python os.getcwdu() 方法

概述
os.getcwdu() 方法用于返回一个当前工作目录的Unicode对象。

Unix, Windows 系统下可用。

语法
getcwdu()方法语法格式如下:

os.getcwdu()

参数

返回值
返回一个当前工作目录的Unicode对象。

实例
以下实例演示了 getcwdu() 方法的使用:

#!/usr/bin/python
# -*- coding: UTF-8 -*-import os, sys# 切换到 "/var/www/html" 目录
os.chdir("/var/www/html" )# 打印当前目录
print "当前工作目录 : %s" % os.getcwdu()# 打开 "/tmp"
fd = os.open( "/tmp", os.O_RDONLY )# 使用 os.fchdir() 方法修改目录
os.fchdir(fd)# 打印当前目录
print "当前工作目录 : %s" % os.getcwdu()# 关闭文件
os.close( fd )

执行以上程序输出结果为:

当前工作目录 : /var/www/html
当前工作目录 : /tmp

23、Python os.isatty() 方法

概述
os.isatty() 方法用于判断如果文件描述符fd是打开的,同时与tty(-like)设备相连,则返回true, 否则False。

语法
isatty()方法语法格式如下:

os.isatty()

参数

返回值
如果文件描述符fd是打开的,同时与tty(-like)设备相连,则返回true, 否则False。

实例
以下实例演示了 isatty() 方法的使用:

#!/usr/bin/python
# -*- coding: UTF-8 -*-import os, sys# 打开文件
fd = os.open( "foo.txt", os.O_RDWR|os.O_CREAT )# 写入字符串
os.write(fd, "This is test")# 使用 isatty() 查看文件
ret = os.isatty(fd)print "返回值: ", ret# 关闭文件
os.close( fd )

执行以上程序输出结果为:

返回值:  False

24、Python os.lchflags() 方法

概述
os.lchflags() 方法用于设置路径的标记为数字标记,类似 chflags(),但是没有软链接。

只支持在 Unix 下使用。

语法
lchflags()方法语法格式如下:

os.lchflags(path, flags)

参数
path – 设置标记的文件路径

flags – 可以由一个或多个标记组合,多个使用"|"隔开:

UF_NODUMP: 非转储文件

UF_IMMUTABLE: 文件是只读的

UF_APPEND: 文件只能追加内容

UF_NOUNLINK: 文件不可删除

UF_OPAQUE: 目录不透明,需要通过联合堆栈查看

SF_ARCHIVED: 可存档文件(超级用户可设)

SF_IMMUTABLE: 文件是只读的(超级用户可设)

SF_APPEND: 文件只能追加内容(超级用户可设)

SF_NOUNLINK: 文件不可删除(超级用户可设)

SF_SNAPSHOT: 快照文件(超级用户可设)

返回值
该方法没有返回值。

实例
以下实例演示了 lchflags() 方法的使用:

#!/usr/bin/python
# -*- coding: UTF-8 -*-import os, sys# 打开文件
path = "/var/www/html/foo.txt"
fd = os.open( path, os.O_RDWR|os.O_CREAT )# 关闭文件
os.close( fd )# 修改文件标记
ret = os.lchflags(path, os.UF_IMMUTABLE )print "修改文件标记成功!!"

执行以上程序输出结果为:

修改文件标记成功!!

25、Python os.lchmod() 方法

概述
os.lchmod() 方法用于修改连接文件权限。

只支持在 Unix 下使用。

语法
lchmod()方法语法格式如下:

os.lchmod(path, mode)

参数
path – 设置标记的文件路径

mode – 可以是以下一个或多个组成,多个使用 “|” 隔开:

stat.S_ISUID:设置 UID 位

stat.S_ISGID: 设置组 ID 位

stat.S_ENFMT: 系统文件锁定的执法行动

stat.S_ISVTX: 在执行之后保存文字和图片

stat.S_IREAD: 对于拥有者读的权限

stat.S_IWRITE: 对于拥有者写的权限

stat.S_IEXEC: 对于拥有者执行的权限

stat.S_IRWXU:对于拥有者读、写、执行的权限

stat.S_IRUSR: 对于拥有者读的权限

stat.S_IWUSR: 对于拥有者写的权限

stat.S_IXUSR: 对于拥有者执行的权限

stat.S_IRWXG: 对于同组的人读写执行的权限

stat.S_IRGRP: 对于同组读的权限

stat.S_IWGRP:对于同组写的权限

stat.S_IXGRP: 对于同组执行的权限

stat.S_IRWXO: 对于其他组读写执行的权限

stat.S_IROTH: 对于其他组读的权限

stat.S_IWOTH: 对于其他组写的权限

stat.S_IXOTH:对于其他组执行的权限

返回值
该方法没有返回值。

实例
以下实例演示了 lchmod() 方法的使用:

#!/usr/bin/python
# -*- coding: UTF-8 -*-import os, sys# 打开文件
path = "/var/www/html/foo.txt"
fd = os.open( path, os.O_RDWR|os.O_CREAT )# 关闭文件
os.close( fd )# 修改文件权限
# 设置文件可以通过组执行
os.lchmod( path, stat.S_IXGRP)# 设置文件可以被其他用户写入
os.lchmod("/tmp/foo.txt", stat.S_IWOTH)print "修改权限成功!!"

执行以上程序输出结果为:

修改权限成功!!

相关文章:

Python语言零基础入门教程(二十三)

16、Python os.fpathconf() 方法 概述 os.fpathconf() 方法用于返回一个打开的文件的系统配置信息。 Unix上可用。 语法 fpathconf()方法语法格式如下&#xff1a; os.fpathconf(fd, name)参数 fd – 打开的文件的描述符。 name – 可选&#xff0c;和buffersize参数和Pyt…...

[ansible系列]ansible使用扩展

目录 一. 本地执行 二. 任务委托 三. 任务暂停 四. 滚动执行 五. 只执行一次 六. 设置环境变量 七. 交互提示 一. 本地执行 我们知道ansible的是操作被控端的&#xff0c;所有执行的动作都是在被控端上完成的&#xff0c;当然在某些特定的时候我们想要有些tas…...

Java工具类(时间格式转换)

import java.util.Date; import java.text.DateFormat; /** * 格式化时间类 * DateFormat.FULL 0 * DateFormat.DEFAULT 2 * DateFormat.LONG 1 * DateFormat.MEDIUM 2 * DateFormat.SHORT 3 * author Michael * version 1.0&#xff0c; 2007/03/09 */ public c…...

数据库(第五次作业)

1.1 Redis概述 1.1.1 什么是Redis 2008年&#xff0c;意大利的一家创业公司Merzia推出了一款基于MySQL的网站实时统计系统LLOOGG&#xff0c;然而没过多久该公司的创始人 Salvatore Sanfilippo便开始对MySQL的性能感到失望&#xff0c;于是他决定亲自为LLOOGG量身定做一个数据…...

代码随想录【Day16】| 110. 平衡二叉树、257. 二叉树的所有路径、404. 左叶子之和

110. 平衡二叉树 题目链接 题目描述&#xff1a; 给定一个二叉树&#xff0c;判断它是否是高度平衡的二叉树。 本题中&#xff0c;一棵高度平衡二叉树定义为&#xff1a;一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1。 示例 1: 给定二叉树 [3,9,20,null,nul…...

套娃式工具!用 AI 识别 AI ?#AI classifier

2022年以来&#xff0c;市面上就出现了不少 AI 生成文本的工具&#xff0c;尤其是 OpenAI 推出的 ChatGPT &#xff0c;不仅能够协助完成撰写邮件、视频脚本、文案、翻译、代码等任务&#xff0c;还能通过学习和理解人类的语言来进行对话&#xff0c;并根据聊天的上下文进行互动…...

CURL error 60: SSL certificate problem: certificate has expired

项目使用guzzleHttp做的一个接口&#xff0c;报错&#xff1a;certificate has expired 因为在linux centos环境与window环境有所不同&#xff0c;在此记录一下解决过程。 目录 报错提示 原因 解决方式 1.去掉guzzlehttp的验证 2.更新CA证书 总结 报错提示 cURL error 60…...

接口自动化:requests

引言&#xff1a;目前软件测试对测试人员的能力要求 业务测试能力&#xff1a;占比5-6成接口、自动化、性能测试能力&#xff1a;占比4-5成流程规范&#xff1a;1成&#xff08;需要综合型的测试人才&#xff09;&#xff1a;业务能力、代码能力、开发思维&#xff08;封装&…...

极简TypeScript教程--数据类型

TypeScript最大的特点就是有类型检测&#xff0c;格式为let/const 标识符: 数据类型 赋值;例子:let msg: string Hello World这样msg这个变量就有了字符串类型,如果再给他赋值为数字类型&#xff0c;就会在编译期报错。变量的类型推导在开发中&#xff0c;有时候为了方便起见…...

JAVA开发测试(jmeter如何测试性能与估算)

对C的业务网站或应用&#xff0c;进行性能测试来评估使用服务器情况是必不可少的一项工作。 一、测试工具&#xff1a; Apache JMeter 可以用于对服务器、网络或对象模拟巨大的负载&#xff0c;来自不同压力类别下测试它们的强度和分析整体性能&#xff0c;是Apache组织开发的…...

【新解法】华为OD机试 - 求解连续数列 | 备考思路,刷题要点,答疑,od Base 提供

华为 OD 清单查看地址:blog.csdn.net/hihell/category_12199275.html 求解连续数列 | 备考思路,刷题要点,答疑,od Base 提供 题目 已知连续正整数数列{K}=K1,K2,K3… Ki的各个数相加之和为S, i = N (0 < S < 100000, 0 < N < 100000), 求此数列K。 输入 输…...

Python3 File(文件) 方法

Python3 File(文件) 方法 open() 方法 Python open() 方法用于打开一个文件&#xff0c;并返回文件对象。 在对文件进行处理过程都需要使用到这个函数&#xff0c;如果该文件无法被打开&#xff0c;会抛出 OSError。 注意&#xff1a;使用 open() 方法一定要保证关闭文件对…...

APP渗透抓包

APP渗透抓包1.APP渗透测试原理2.安装安卓模拟器抓包2.1.安装模拟器2.2.设置代理下载证书2.2.1.burp suite设置代理2.2.2.浏览器设置代理2.2.3.下载证书2.3.模拟器安装证书2.3.1.移动证书2.3.2.证书设置2.4.设置代理2.4.1.设置burp suite代理2.4.2.夜神模拟器代理2.5.抓包测试2.…...

力扣(LeetCode)414. 第三大的数(2023.02.16)

给你一个非空数组&#xff0c;返回此数组中 第三大的数 。如果不存在&#xff0c;则返回数组中最大的数。 示例 1&#xff1a; 输入&#xff1a;[3, 2, 1] 输出&#xff1a;1 解释&#xff1a;第三大的数是 1 。 示例 2&#xff1a; 输入&#xff1a;[1, 2] 输出&#xff1a;2…...

Spring底层

一、什么是Spring&#xff1f;谈谈你对IOC和AOP的理解。Spring&#xff1a; 是一个企业级java应用框架&#xff0c;他的作用主要是 简化软件的开发以及配置过程&#xff0c;简化项目部署环境。Spring的有点&#xff1a;1、Spring低侵入设计&#xff0c;对业务代码的污染非常低。…...

Cache-Control 常见字段

Cache-Control 常见字段 参考&#xff1a;https://blog.csdn.net/qq_41996454/article/details/108644436 Cache-Control 可以在请求头或者响应头中设置&#xff0c;并且可以组合使用多种指令 no-cache 和 no-store 用作控制缓存&#xff0c;被服务器通过响应头 Cache-Contro…...

Flink Checkpoint 中的通用增量Checkpoint

文章目录知识点状态Flink容错恢复周期性的 Checkpoint错误检测 Failure Detected重新调度 Re-scheduling状态恢复 State Recovery通用增量Checkpoint知识点 状态 算子需要记录之前数据处理的中间结果&#xff0c;把中间结果暂时缓存在算子的内部&#xff0c;这就是算子的状态…...

金三银四必看的软件测试面试题宝典,背完offer随便拿

怎么来设计测试方案根据测试需求&#xff08;包括功能需求和非功能性需求&#xff09;&#xff0c;识别测试要点&#xff0c;识别测试环境要求&#xff0c;安排测试轮次&#xff0c;根据项目计划和开发计划做整体的测试安排。 被测试的特性&#xff1a;通过对需求规格说明书进行…...

企业电子招标采购系统源码Spring Cloud + Spring Boot +二次开发+ MybatisPlus + Redis

一、立项管理 1、招标立项申请 功能点&#xff1a;招标类项目立项申请入口&#xff0c;用户可以保存为草稿&#xff0c;提交。 2、非招标立项申请 功能点&#xff1a;非招标立项申请入口、用户可以保存为草稿、提交。 3、采购立项列表 功能点&#xff1a;对草稿进行编辑&#x…...

扬帆优配“数字经济+实体经济”融合发展,行业增长空间大!

组织以为&#xff0c;数字经济已经逐步成为工业商场和资本商场的共同主题。 2月16日&#xff0c;国家发改委在《求是》杂志发表文章《努力推进经济完成质的有效提升和量的合理增加》。文章指出要加速开展数字经济&#xff0c;加速实施“东数西算”等重大工程&#xff0c;推进数…...

线程与协程

1. 线程与协程 1.1. “函数调用级别”的切换、上下文切换 1. 函数调用级别的切换 “函数调用级别的切换”是指&#xff1a;像函数调用/返回一样轻量地完成任务切换。 举例说明&#xff1a; 当你在程序中写一个函数调用&#xff1a; funcA() 然后 funcA 执行完后返回&…...

Python爬虫(一):爬虫伪装

一、网站防爬机制概述 在当今互联网环境中&#xff0c;具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类&#xff1a; 身份验证机制&#xff1a;直接将未经授权的爬虫阻挡在外反爬技术体系&#xff1a;通过各种技术手段增加爬虫获取数据的难度…...

华硕a豆14 Air香氛版,美学与科技的馨香融合

在快节奏的现代生活中&#xff0c;我们渴望一个能激发创想、愉悦感官的工作与生活伙伴&#xff0c;它不仅是冰冷的科技工具&#xff0c;更能触动我们内心深处的细腻情感。正是在这样的期许下&#xff0c;华硕a豆14 Air香氛版翩然而至&#xff0c;它以一种前所未有的方式&#x…...

MySQL 部分重点知识篇

一、数据库对象 1. 主键 定义 &#xff1a;主键是用于唯一标识表中每一行记录的字段或字段组合。它具有唯一性和非空性特点。 作用 &#xff1a;确保数据的完整性&#xff0c;便于数据的查询和管理。 示例 &#xff1a;在学生信息表中&#xff0c;学号可以作为主键&#xff…...

python爬虫——气象数据爬取

一、导入库与全局配置 python 运行 import json import datetime import time import requests from sqlalchemy import create_engine import csv import pandas as pd作用&#xff1a; 引入数据解析、网络请求、时间处理、数据库操作等所需库。requests&#xff1a;发送 …...

手机平板能效生态设计指令EU 2023/1670标准解读

手机平板能效生态设计指令EU 2023/1670标准解读 以下是针对欧盟《手机和平板电脑生态设计法规》(EU) 2023/1670 的核心解读&#xff0c;综合法规核心要求、最新修正及企业合规要点&#xff1a; 一、法规背景与目标 生效与强制时间 发布于2023年8月31日&#xff08;OJ公报&…...

十九、【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建

【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建 前言准备工作第一部分:回顾 Django 内置的 `User` 模型第二部分:设计并创建 `Role` 和 `UserProfile` 模型第三部分:创建 Serializers第四部分:创建 ViewSets第五部分:注册 API 路由第六部分:后端初步测…...

Python网页自动化Selenium中文文档

1. 安装 1.1. 安装 Selenium Python bindings 提供了一个简单的API&#xff0c;让你使用Selenium WebDriver来编写功能/校验测试。 通过Selenium Python的API&#xff0c;你可以非常直观的使用Selenium WebDriver的所有功能。 Selenium Python bindings 使用非常简洁方便的A…...

嵌入式学习之系统编程(九)OSI模型、TCP/IP模型、UDP协议网络相关编程(6.3)

目录 一、网络编程--OSI模型 二、网络编程--TCP/IP模型 三、网络接口 四、UDP网络相关编程及主要函数 ​编辑​编辑 UDP的特征 socke函数 bind函数 recvfrom函数&#xff08;接收函数&#xff09; sendto函数&#xff08;发送函数&#xff09; 五、网络编程之 UDP 用…...

对象回调初步研究

_OBJECT_TYPE结构分析 在介绍什么是对象回调前&#xff0c;首先要熟悉下结构 以我们上篇线程回调介绍过的导出的PsProcessType 结构为例&#xff0c;用_OBJECT_TYPE这个结构来解析它&#xff0c;0x80处就是今天要介绍的回调链表&#xff0c;但是先不着急&#xff0c;先把目光…...