Linux下的系统接口(实时更新)

news2024/9/21 21:15:16

文件操作

open

pathname:路径

flags:文件的打开方式

mode:文件的权限

返回值

打开成功返回值该文件的文件描述符,打开失败返回-1。

write

fd : 文件描述符

buf : 指向用于存储写入数据的缓冲区的指针

count : 写入字节的最大个数

返回值

写入成功返回实际写入的字节数,写入失败返回-1。

read

fd:文件描述符

buf : 指向用于存储读取数据的缓冲区的指针

count : 读取的最大字节数

返回值

读取成功:

读取成功返回实际读取的字节数

如果返回的是0,这意味着已经读取到文件的末尾。

文件的位置指针(也就是下一次读取或写入的位置)会根据读取的字节数向前移动。

如果实际读取的字节数少于请求的字节数,这不一定表示出错。例如,文件可能只剩下几个字节,或者数据可能正在从管道或终端流式传输,所以可能无法立即读取到请求的全部数据。此外,如果read()函数在读取过程中被信号中断,也可能导致读取的字节数少于请求的字节数

读取失败

如果读取操作失败,read()函数会返回-1,并且全局变量errno会被设置为一个表示错误类型的值。这样,调用者可以检查errno来确定出错的具体原因。

在出错的情况下,文件位置是否改变是不确定的。也就是说,文件的位置指针可能保持不变,也可能已经向前移动了一部分,这取决于操作系统和文件系统的具体实现

pipe

fildes : 存放管道文件描述符的数组,0下标是只读方式打开,1下标是只写方式打开。

返回值

创建成功返回0,失败返回-1。

mkfifo

pathname : 文件路径+文件名

mode : 文件权限

返回值

创建成功返回0,失败返回-1

snprintf

str : 指向要写入数据的字符数组的指针。(目标数组)

size : 写入的最大字节数。

format : 格式化字符串,用于指定输出格式。

... : 根据format字符串的指定格式传入的参数列表。

返回值

共享内存接口

shmget

key : key是一个标识共享内存的一个标识符,具有唯一性,可以用shmtok接口生成

size:创建的共享内存的大小,一般操作系统是以4KB(一个页的大小)进行分配的,假设申请了4097字节的内存操作系统还是会分配2*4KB,但实际上可用的大小还是4097字节,其他空间就浪费了。

shmflg:打开方式的选项,有IPC_CREAT,IPC_EXCL等等。

IPC_CREAT:用于创建一个新的共享内存段,如果这个内存段不存在则创建,返回shmid;如果这个内存段已经存在就返回这个内存段对应的shmid

IPC_CREAT和IPC_EXCL一起使用:创建一个新的内存段,如果如果这个内存段不存在则创建,返回shmid,如果内存段已经存在则直接返回错误信息。

返回值:shmid

ftok

通过输入一个文件名(可以随意字符串)和一个任意的数字,生成一个key值并返回

shmat

shmid:指定共享内存

shmaddr:指定共享内存在虚拟地址空间的位置,为nullptr的话则是操作系统指定一般设置为空。

shmflg: 挂接的方式,0的话是默认以读写方式挂接

shmdt

shmaddr: 共享内存的地址

进程等待

waitpid和wait

pid : 子进程的pid

status : 输出型参数,返回状态码

options : 0是阻塞等待

返回值

时间函数

sleep

命令行的使用

sleep 5 表示暂停5秒  ; sleep 1m表示暂停一分钟  ; sleep 1h表示暂停一小时  ;sleep 1d表示暂停一天

语言编程中

sleep(秒数)

sleep(5)表示暂停5秒   ; sleep(60)表示暂停60秒

有关进程的函数

fork

作用:创建子进程

使用fork函数会创建子进程,会获得两个返回值,父进程返回子进程的pid,子进程返回0,创建失败返回-1,可以用perror获取创建失败的原因

getpid和getppid

作用:getpid获取子进程的pid,getppid获取父进程的pid

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2117773.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

7系列FPGA HR/HP I/O区别

HR High Range I/O with support for I/O voltage from 1.2V to 3.3V. HP High Performance I/O with support for I/O voltage from 1.2V to 1.8V. UG865:Zynq-7000 All Programmable SoC Packaging and Pinout

Jmeter之beanshell使用

beanshell:和setup类似,登录前需要做的工作,是一种java源代码解释器,具有脚本语言的特性 使用beanshell可以使jmeter实现更多的业务需求 beanshell常用语法 vars.get() 从jmeter中获得变量 vars.put() 把数据保存为jmeter的变量…

Access用了20年杀死VF,等来的却是:国产新型软件反杀

现如今,使用Access数据库的人可能不多了。 Access数据库 在早些年的时候,微软旗下有两个广为人知的桌面数据库开发工具。 一款是自家研发的Microsoft ACCESS,它依托Windows操作系统,并内嵌于Microsoft Office之中,深受…

2024下《系统规划与管理师》50个高频考点汇总!背就有效

今年高项仅考上半年一次,下半年考的高级科目只有系规难度相对较低,系规需要学习的内容比高项少很多,高项第四版教程731页,系规只有328页,少了一半多。并且系规IT内容会更少,考试内容大多在书上,…

接口幂等的方案

一、什么是幂等 幂等指多次操作产生的影响只会跟一次执行的结果相同,通俗的说:某个行为重复的执行,最终获取的结果是相同的。 二、什么是接口幂等 同一个接口,对于同一个请求,不管调用多少次,产生的最终…

除了C盘其它盘都不见了?专业数据恢复策略解析

在数字时代,数据几乎成为了我们生活与工作的核心。然而,当电脑突然遭遇“除了C盘其它盘都不见了”的困境时,无疑是对我们数据安全的一次重大挑战。面对这样的紧急情况,如何迅速、有效地恢复丢失的数据,成为了许多用户迫…

苹果被删视频怎么恢复?分享4个靠谱的方法

平时过年过节的时候,亲戚家的小孩总会拿你的手机乱点一通,有时可能会不小心点进手机相册里面,误删了相册里的视频。如果苹果用户遇到这种情况,那该如何恢复苹果被删视频呢?不要慌张,既然你点开了这篇文章&a…

cv::convexityDefects()详解

参考链接:详解OpenCV的函数convexHull()和函数convexityDefects(),并利用它们)做凸包(凸壳)检测及凸包(凸壳)的缺陷检测-CSDN博客 void convexityDefects( InputArray contour, InputArray convexhull, OutputArray convexityDefects ); 三个参数说明如下: contou…

Java ArrayList扩容机制 (源码解读)

结论:初始长度为10,若所需长度小于1.5倍原长度,则按照1.5倍扩容。若不够用则按照所需长度扩容。 一. 明确类内部重要变量含义 1:数组默认长度 2:这是一个共享的空数组实例,用于明确创建长度为0时的ArrayList &#xff…

钙粘蛋白CDH:肿瘤靶点研究新秀

前 言: 钙粘蛋白是钙依赖性细胞间粘附的重要介质,属于跨膜糖蛋白。钙粘蛋白在组织稳态中起重要作用,促进组织发育、突触粘附和上皮屏障功能。钙粘蛋白功能改变与癌症进展、血管疾病和其他病理学有关。目前多种钙粘蛋白有望成为治疗靶点&…

英伟达显卡A100定制版和原厂版什么区别为什么价格相差这么大?

环境: 英伟达A100显卡 问题描述: 英伟达显卡A100定制版和原厂版什么区别为什么价格相差这么大? 定制版 原本 解决方案: NVIDIA A100显卡的定制版和原版之间的主要区别通常在于它们的设计、用途、性能以及价格。以下是一些…

如何解决线上平台抽佣高 线下门店客流少的痛点!

目前,许多传统零售店铺正遭遇客源下降的难题。尽管广告推广能带来一定的客流,但其费用昂贵。鉴于此,众多零售商纷纷选择加入像美团、饿了么和抖音这样的大型在线平台,但这些平台的高佣金率导致了利润的大幅缩水。在这样的市场环境…

“数据守护,商业共赢” — 华企盾招商会议圆满落幕

在数字化浪潮席卷全球的今天,数据安全已成为企业可持续发展的基石。为了共同探讨数据防护的新策略,推动行业生态的健康发展,我司于2024年9月6日成功举办了一场以“数据守护,商业共赢”为主题的招商会议。此次会议汇聚了来自各行各…

本地私有化RAG知识库搭建—基于Ollama+AnythingLLM保姆级教程

一、关于RAG 1.1 简介 检索增强生成(Retrieval-Augmented Generation,RAG)是一种结合了信息检索和语言模型的技术,它通过从大规模的知识库中检索相关信息,并利用这些信息来指导语言模型生成更准确和深入的答案。这种…

UEC++学习(十七)利用SceneCaptureComponent2d进行截图

最近有个需求是需要将场景中的actor进行截图,并且将截图保存成png,png中需要将场景背景忽略掉,只显示特定的actor。 这里是通过SceneCapture2d组件捕捉场景后,将背景的alpha通道设置为0,实现背景透明的功能。 &#x…

2024年音频转文字软件哪家强?4 款等你来测

hello,今天来聊聊一个超级方便的小工具,它能帮你把声音直接变成文字!想想看,现在谁没有几个音频文件要处理的,比如记笔记的声音、开会的录音、做采访的素材,这些都能搞定。别着急,我现在就给你们…

static 的作用,static 在类中使用的注意事项(定义、初始化和使用),static 全局变量和普通全局变量的异同

目录 1. static 的基本作用 2. static 在类中的使用 2.1 静态成员变量 2.2 静态成员函数 3. static 变量在全局作用域中的使用 3.1 static 全局变量 3.2 普通全局变量 4. static 局部变量 5. static 全局变量与普通全局变量的异同 static 在类中的静态成员变量和成员函…

基于人工智能的图像分类系统

目录 引言项目背景环境准备 硬件要求软件安装与配置系统设计 系统架构关键技术代码示例 数据预处理模型训练模型预测应用场景结论 1. 引言 图像分类是计算机视觉中的一个重要任务,目标是自动识别图像中的对象类别。通过卷积神经网络(CNN)等…

mingw c++/qt使用grpc方法详细教程

1. RPC框架 RPC框架是什么 RPC 框架说白了就是让你可以像调用本地方法一样调用远程服务提供的方法,而不需要关心底层的通信细节。简单地说就让远程服务调用更加简单、透明。 RPC包含了客户端(Client)和服务端(Server) 业界主流的 RPC 框架整体上分为三类: 1> 支持多语…

Springboot课堂评测系统的设计与实现---附源码82642

目 录 摘要 Abstract 1 绪论 1.1 研究背景与意义 1.2 开发技术和开发特点 1.3论文结构与章节安排 2 课堂评测系统系统分析 2.1 可行性分析 2.2 系统流程分析 2.2.1 数据增加流程 2.2.2 数据修改流程 2.2.3 数据删除流程 2.3 系统功能分析 2.3.1 功能性分析 2.3.…