linux errno 线程,Linux errno 错误对照表

errno 在 中定义,错误 Exx 的宏定义在 /usr/include/asm-generic 文件夹下面的 errno-base.h 和 errno.h,分别定义了 1-34 、35-132 的错误定义。

strerror() 函数依据 errno 值返回错误描述字符串,下面程序打印对照表:

Code highlighting produced by Actipro CodeHighlighter (freeware)

http://www.linuxidc.com/

–>01.#include

02.#include

03.#include

04.

05.int main()

06.{

07.    int i;

08.    for(i = 0; i < 140; ++i)

09.    {

10.        errno = i;

11.        printf(“errno %d :\t\t%s\n“,i,strerror(errno));

12.    }

13.    return 0;

14.}

错误对照表:

errno0 : Success

errno1 : Operation not permitted

errno2 : No such file or directory

errno3 : No such process

errno4 : Interrupted system call

errno5 : Input/output error

errno6 : No such device or address

errno7 : Argument list too long

errno8 : Exec format error

errno9 : Bad file descriptor

errno10 : No child processes

errno11 : Resource temporarily unavailable

errno12 : Cannot allocate memory

errno13 : Permission denied

errno14 : Bad address

errno15 : Block device required

errno16 : Device or resource busy

errno17 : File exists

errno18 : Invalid cross-device link

errno19 : No such device

errno20 : Not a directory

errno21 : Is a directory

errno22 : Invalid argument

errno23 : Too many open files in system

errno24 : Too many open files

errno25 : Inappropriate ioctl for device

errno26 : Text file busy

errno27 : File too large

errno28 : No space left on device

errno29 : Illegal seek

errno30 : Read-only file system

errno31 : Too many links

errno32 : Broken pipe

errno33 : Numerical argument out of domain

errno34 : Numerical result out of range

errno35 : Resource deadlock avoided

errno36 : File name too long

errno37 : No locks available

errno38 : Function not implemented

errno39 : Directory not empty

errno40 : Too many levels of symbolic links

errno41 : Unknown error 41

errno42 : No message of desired type

errno43 : Identifier removed

errno44 : Channel number out of range

errno45 : Level 2 not synchronized

errno46 : Level 3 halted

errno47 : Level 3 reset

errno48 : Link number out of range

errno49 : Protocol driver not attached

errno50 : No CSI structure available

errno51 : Level 2 halted

errno52 : Invalid exchange

errno53 : Invalid request descriptor

errno54 : Exchange full

errno55 : No anode

errno56 : Invalid request code

errno57 : Invalid slot

errno58 : Unknown error 58

errno59 : Bad font file format

errno60 : Device not a stream

errno61 : No data available

errno62 : Timer expired

errno63 : Out of streams resources

errno64 : Machine is not on the network

errno65 : Package not installed

errno66 : Object is remote

errno67 : Link has been severed

errno68 : Advertise error

errno69 : Srmount error

errno70 : Communication error on send

errno71 : Protocol error

errno72 : Multihop attempted

errno73 : RFS specific error

errno74 : Bad message

errno75 : Value too large for defined datatype

errno76 : Name not unique on network

errno77 : File descriptor in bad state

errno78 : Remote address changed

errno79 : Can not access a needed sharedlibrary

errno80 : Accessing a corrupted sharedlibrary

errno81 : .lib section in a.out corrupted

errno82 : Attempting to link in too manyshared libraries

errno83 : Cannot exec a shared librarydirectly

errno84 : Invalid or incomplete multibyte orwide character

errno85 : Interrupted system call should berestarted

errno86 : Streams pipe error

errno87 : Too many users

errno88 : Socket operation on non-socket

errno89 : Destinationaddress required

errno90 : Message too long

errno91 : Protocol wrong type for socket

errno92 : Protocol not available

errno93 : Protocol not supported

errno94 : Socket type not supported

errno95 : Operation not supported

errno96 : Protocol family not supported

errno97 : Address family not supported byprotocol

errno98 : Address already in use

errno99 : Cannot assign requested address

errno100 : Network is down

errno101 : Network is unreachable

errno102 : Network dropped connection onreset

errno103 : Software caused connection abort

errno104 : Connection reset by peer

errno105 : No buffer space available

errno106 : Transport endpoint is alreadyconnected

errno107 : Transport endpoint is notconnected

errno108 : Cannot send after transportendpoint shutdown

errno109 : Too many references: cannot splice

errno110 : Connection timed out

errno111 : Connection refused

errno112 : Host is down

errno113 : No route to host

errno114 : Operation already in progress

errno115 : Operation now in progress

errno116 : Stale NFS file handle

errno117 : Structure needs cleaning

errno118 : Not a XENIX named type file

errno119 : No XENIX semaphores available

errno120 : Is a named type file

errno121 : Remote I/O error

errno122 : Disk quota exceeded

errno123 : No medium found

errno124 : Wrong medium type

errno125 : Operation canceled

errno126 : Required key not available

errno127 : Key has expired

errno128 : Key has been revoked

errno129 : Key was rejected by service

errno130 : Owner died

errno131 : State not recoverable

errno132 : Operation not possible due toRF-kill

errno133 : Unknown error 133

errno134 : Unknown error 134

errno135 : Unknown error 135

errno136 : Unknown error 136

errno137 : Unknown error 137

errno138 : Unknown error 138

errno139 : Unknown error 139

由上可见Linux对错误宏的定义。

头文件 /usr/include/asm-generic/errno-base.h 的源码:

#ifndef _ASM_GENERIC_ERRNO_BASE_H

#define _ASM_GENERIC_ERRNO_BASE_H

#define EPERM 1 /* Operation not permitted */

#define ENOENT2 /* No such file or directory */

#define ESRCH 3 /* No such process */

#define EINTR 4 /* Interrupted system call */

#define EIO 5 /* I/O error */

#define ENXIO 6 /* No such device or address */

#define E2BIG 7 /* Argument list too long */

#define ENOEXEC8 /* Exec format error */

#define EBADF 9 /* Bad file number */

#define ECHILD10 /* No child processes */

#define EAGAIN11 /* Try again */

#define ENOMEM12 /* Out of memory */

#define EACCES13 /* Permission denied */

#define EFAULT14 /* Bad address */

#define ENOTBLK15 /* Block device required */

#define EBUSY 16 /* Device or resource busy */

#define EEXIST17 /* File exists */

#define EXDEV 18 /* Cross-device link */

#define ENODEV19 /* No such device */

#define ENOTDIR20 /* Not a directory */

#define EISDIR21 /* Is a directory */

#define EINVAL22 /* Invalid argument */

#define ENFILE23 /* File table overflow */

#define EMFILE24 /* Too many open files */

#define ENOTTY25 /* Not a typewriter */

#define ETXTBSY26 /* Text file busy */

#define EFBIG 27 /* File too large */

#define ENOSPC28 /* No space left on device */

#define ESPIPE29 /* Illegal seek */

#define EROFS 30 /* Read-only file system */

#define EMLINK31 /* Too many links */

#define EPIPE 32 /* Broken pipe */

#define EDOM 33 /* Math argument out of domain of func */

#define ERANGE34 /* Math result not representable */

#endif

头文件/usr/include/asm-generic/erno.h源码:

#ifndef _ASM_GENERIC_ERRNO_H

#define _ASM_GENERIC_ERRNO_H

#include

#define EDEADLK35 /* Resource deadlock would occur */

#define ENAMETOOLONG36 /* File name too long */

#define ENOLCK37 /* No record locks available */

#define ENOSYS38 /* Function not implemented */

#define ENOTEMPTY39 /* Directory not empty */

#define ELOOP 40 /* Too many symbolic links encountered */

#define EWOULDBLOCKEAGAIN /* Operation would block */

#define ENOMSG42 /* No message of desired type */

#define EIDRM 43 /* Identifier removed */

#define ECHRNG44 /* Channel number out of range */

#define EL2NSYNC45 /* Level 2 not synchronized */

#define EL3HLT46 /* Level 3 halted */

#define EL3RST47 /* Level 3 reset */

#define ELNRNG48 /* Link number out of range */

#define EUNATCH49 /* Protocol driver not attached */

#define ENOCSI50 /* No CSI structure available */

#define EL2HLT51 /* Level 2 halted */

#define EBADE 52 /* Invalid exchange */

#define EBADR 53 /* Invalid request descriptor */

#define EXFULL54 /* Exchange full */

#define ENOANO55 /* No anode */

#define EBADRQC56 /* Invalid request code */

#define EBADSLT57 /* Invalid slot */

#define EDEADLOCKEDEADLK

#define EBFONT59 /* Bad font file format */

#define ENOSTR60 /* Device not a stream */

#define ENODATA61 /* No data available */

#define ETIME 62 /* Timer expired */

#define ENOSR 63 /* Out of streams resources */

#define ENONET64 /* Machine is not on the network */

#define ENOPKG65 /* Package not installed */

#define EREMOTE66 /* Object is remote */

#define ENOLINK67 /* Link has been severed */

#define EADV 68 /* Advertise error */

#define ESRMNT69 /* Srmount error */

#define ECOMM 70 /* Communication error on send */

#define EPROTO71 /* Protocol error */

#define EMULTIHOP72 /* Multihop attempted */

#define EDOTDOT73 /* RFS specific error */

#define EBADMSG74 /* Not a data message */

#define EOVERFLOW75 /* Value too large for defined data type */

#define ENOTUNIQ76 /* Name not unique on network */

#define EBADFD77 /* File descriptor in bad state */

#define EREMCHG78 /* Remote address changed */

#define ELIBACC79 /* Can not access a needed shared library */

#define ELIBBAD80 /* Accessing a corrupted shared library */

#define ELIBSCN81 /* .lib section in a.out corrupted */

#define ELIBMAX82 /* Attempting to link in too many shared libraries */

#define ELIBEXEC83 /* Cannot exec a shared library directly */

#define EILSEQ84 /* Illegal byte sequence */

#define ERESTART85 /* Interrupted system call should be restarted */

#define ESTRPIPE86 /* Streams pipe error */

#define EUSERS87 /* Too many users */

#define ENOTSOCK88 /* Socket operation on non-socket */

#define EDESTADDRREQ89 /* Destination address required */

#define EMSGSIZE90 /* Message too long */

#define EPROTOTYPE91 /* Protocol wrong type for socket */

#define ENOPROTOOPT92 /* Protocol not available */

#define EPROTONOSUPPORT93 /* Protocol not supported */

#define ESOCKTNOSUPPORT94 /* Socket type not supported */

#define EOPNOTSUPP95 /* Operation not supported on transport endpoint */

#define EPFNOSUPPORT96 /* Protocol family not supported */

#define EAFNOSUPPORT97 /* Address family not supported by protocol */

#define EADDRINUSE98 /* Address already in use */

#define EADDRNOTAVAIL99 /* Cannot assign requested address */

#define ENETDOWN100 /* Network is down */

#define ENETUNREACH101 /* Network is unreachable */

#define ENETRESET102 /* Network dropped connection because of reset */

#define ECONNABORTED103 /* Software caused connection abort */

#define ECONNRESET104 /* Connection reset by peer */

#define ENOBUFS105 /* No buffer space available */

#define EISCONN106 /* Transport endpoint is already connected */

#define ENOTCONN107 /* Transport endpoint is not connected */

#define ESHUTDOWN108 /* Cannot send after transport endpoint shutdown */

#define ETOOMANYREFS109 /* Too many references: cannot splice */

#define ETIMEDOUT110 /* Connection timed out */

#define ECONNREFUSED111 /* Connection refused */

#define EHOSTDOWN112 /* Host is down */

#define EHOSTUNREACH113 /* No route to host */

#define EALREADY114 /* Operation already in progress */

#define EINPROGRESS115 /* Operation now in progress */

#define ESTALE116 /* Stale NFS file handle */

#define EUCLEAN117 /* Structure needs cleaning */

#define ENOTNAM118 /* Not a XENIX named type file */

#define ENAVAIL119 /* No XENIX semaphores available */

#define EISNAM120 /* Is a named type file */

#define EREMOTEIO121 /* Remote I/O error */

#define EDQUOT122 /* Quota exceeded */

#define ENOMEDIUM123 /* No medium found */

#define EMEDIUMTYPE124 /* Wrong medium type */

#define ECANCELED125 /* Operation Canceled */

#define ENOKEY126 /* Required key not available */

#define EKEYEXPIRED127 /* Key has expired */

#define EKEYREVOKED128 /* Key has been revoked */

#define EKEYREJECTED129 /* Key was rejected by service */

/* for robust mutexes */

#define EOWNERDEAD130 /* Owner died */

#define ENOTRECOVERABLE131 /* State not recoverable */

#define ERFKILL 132/* Operation not possible due to RF-kill */

#endif0b1331709591d260c1c78e86d0c51c18.png

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

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

相关文章

如何当好独立CIO(1)

如何当好独立CIO(1)出处:信息方略 文: 刘少东 评论( 0 )条 论坛 博客导读&#xff1a;独立CIO一般有比较丰富的信息化管理经历&#xff0c;具有新的想法和思路&#xff0c;视野也更加开阔&#xff0c;能够以局外人的身份冷静、客观地分析企业战略&#xff1b;同时&#xff0c;这…

提高单片机设计的10个细节

前言1 干扰对单片机应用系统的影响1.1测量数据误差加大1.2 控制系统失灵1.3 影响单片机RAM存储器和E2PROM等1.4 程序运行失常2 如何提高我们设备的抗干扰能力2.1 解决来自电源端的干扰2.2 模拟信号采样抗干扰技术2.3 数字信号传输通道的抗干扰技术2.4 硬件监控电路2.5 PCB电路合…

bzoj 2653 洛谷 P2839 [国家集训队] middle

2653: middle Time Limit: 20 Sec Memory Limit: 512 MBSubmit: 2381 Solved: 1340[Submit][Status][Discuss]Description 一个长度为n的序列a&#xff0c;设其排过序之后为b&#xff0c;其中位数定义为b[n/2]&#xff0c;其中a,b从0开始标号,除法取下整。给你一个长度为n的序…

linux统计单拷贝基因家族,为什么要进行基因家族分析?

原标题&#xff1a;为什么要进行基因家族分析&#xff1f;某物种基因组被测序后&#xff0c;大部分课题组都会发表一些基因家族分析的文章&#xff0c;此举常常被误解为“灌水”&#xff0c;其实不然&#xff0c;理清基因组内基因家族成员分类组成&#xff0c;是挖掘和物种特性…

童继龙:论ERP顾问的创新分享与专业精神

童继龙&#xff1a;论ERP顾问的创新分享与专业精神出处:51CTO博客 文: 童继龙 评论( 0 )条 论坛 博客导读&#xff1a;公司的核心价值观中有一部分为“持续创新”&#xff0c;对实施同事的行为态度考核中有两项为“创新分享”和“专业精神”&#xff0c;因为上海实施部的新同事…

图解分析 Linux 网络包发送过程

大家好&#xff0c;下面的文章转发一个鹅厂同学的文章&#xff0c;这篇文章从应用到内核&#xff0c;写的非常不错&#xff0c;希望大家分析某个技术也可以从这方面入手。-----大家好&#xff0c;我是飞哥!半年前我以源码的方式描述了网络包的接收过程。之后不断有粉丝提醒我还…

linux下shell编程课程设计,Linux下shell编程实例

1. 推断一文件是不是块或字符设备文件。假设是将其复制到 /dev 文件夹下read -p "input a file:" filenameif [ -b $filename -o -c $filename ]thencp $filename /dev/fi2.编写一个脚本。进行简单的减法运算。要求提示输入变量#!/bin/bashread -p "input a num…

[Pku 2774] 字符串(六) {后缀数组的构造}

{ 从这一篇开始介绍后缀数组 一个强大的字符串处理工具 可以先研读罗穗骞的论文 后缀数组——处理字符串的有力工具 再行阅读本文 本文仅作参考和补充 } 字符串的后缀很好理解 譬如对于字符串"aabaaaab" 后缀有{"b","ab","aab","…

使用ReflectionToStringBuilder实现toString方法

org.apache.commons.lang.builder.ReflectionToStringBuilder是commons-lang里的一个类。 import org.apache.commons.lang3.builder.ReflectionToStringBuilder; Overridepublic String toString() {return ReflectionToStringBuilder.toString(this); } 如果需要排除某些字段…

linux下I2C驱动发送IO时序,笔记四:linux下IO口模拟实现I2C协议

一、i2c总线是什么&#xff1f;1、i2c总线是一种物理总线及实实在在的总线&#xff0c;通过板子pcb等图能看到。2、i2c总线是一种主从结构。3、i2c总线是一种通信协议。4、i2c总线是两线制半双工串行总线&#xff1a;两线制&#xff1a;数据线(SDA)——>数据传输、时钟线(SC…

rails3异步发邮件

actionmailer 3.0 结合ar_mailer_rails3 异步发送邮件3 次投票jerry 分享于 3 个月 前, 0 条回复, 244 次浏览Share|actionmailer 3.0 的用法有所改进&#xff0c;并结合ar_mailer_rails3做异步邮件的发送&#xff0c;是比较方便的一种选择&#xff0c;把邮件都交给后台任务来发…

我见过的极品代码bug

程序员写代码有bug是很难避免的&#xff0c;也是因为程序员的bug存在&#xff0c;才让另一个职业有了更好的发展&#xff0c;那就是软件测试行业。但是程序员写bug&#xff0c;对于自己肯定是一件非常难忘的事情。我记得我在之前做一个TP固件升级的功能&#xff0c;也就是开机的…

Linux监控服务并主动重启

Linux查询后台进程&#xff0c;如果没有进程号&#xff0c;则重启服务&#xff1a; #!/bin/sh basepath$(cd dirname $0; pwd) while true doprocnumps -ef|grep "服务名称"|grep -v grep|wc -lif [ $procnum -eq 0 ]then#启动命令echo date %Y-%m-%d date %H:%M:%S …

c语言数组传递技术作用特点,C语言笔试题总结3

4. static有什么用途&#xff1f;(请至少说明两种)1.限制变量的作用域2.设置变量的存储域7. 引用与指针有什么区别&#xff1f;1) 引用必须被初始化&#xff0c;指针不必。2) 引用初始化以后不能被改变&#xff0c;指针可以改变所指的对象。2) 不存在指向空值的引用&…

双一流大学毕业的我,应该何去何从?

内卷时代&#xff0c;万物皆可卷&#xff01;什么是内卷&#xff0c;比如&#xff0c;你在电影院看电影&#xff0c;有一个人站起来了&#xff0c;那么就会有第二个人站起来&#xff0c;没一会儿所有的人就站起来了&#xff0c;但是和坐着相比&#xff0c;站着看电影体验感很差…

[Error]SyntaxError: unindent does not match any outer indentation level

刚开始学习Python 解析器用的IDLE&#xff0c;Python3.1&#xff0c;照着某个入门教程敲代码&#xff0c;敲到if的时候&#xff0c;总是出现这个错误 >>> if x<0:x0elif x0:SyntaxError: unindent does not match any outer indentation level 因为x0这行回车后&am…

go

我放弃Python转Go语言的9大理由&#xff08;附优秀书籍推荐&#xff09; https://www.jb51.net/article/126998.htm 转载于:https://www.cnblogs.com/charlieLeo/p/9512713.html

【原创】从 列表的重复 到 用sum展开二层嵌套列表将子元素合并

转载请注明出处&#xff1a;https://www.cnblogs.com/oceanicstar/p/9517159.html★像R语言里头有rep函数可以让向量的值重复&#xff0c;在python里面可以直接对列表用乘法让列表进行重复注&#xff1a;这里生成的重复列表是个新列表&#xff08;我们可以打印id查看一下&#…

c语言找出最大值和最小值并按降序排输出,大学一年级下学期C语言程序设计实验报告答案 完整版...

for(j7;j>i;j--)//将插入点以后的元素顺序往后移一位 a[j1]a[j];a[i]number;//插入数据 printf(\输出改变后的数组\\n\for(i0;i<8;i)//输出插入后仍有序的数组 printf(\ }(3)写一个3 x 5矩阵的转置程序&#xff0c;输出其原矩阵的值和转置以后的结果。提示&#xff1a;1)…

如何正确的使用微信公众号

我发现很多人可能不知道怎么在微信公众号里面查找自己想要的内容。所以制作了两个视频第一个是如何搜索文章&#xff0c;通过关键字搜索可以找到很多自己想要的内容还有通过微信公众号查找资料&#xff0c;这个是我最近刚增加的功能。~就这两件事~喜欢C/C语言或者正在学习C/C语…