#define    EPERM         1    /* Operation not permitted */
#define    ENOENT        2    /* 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    ENOEXEC       8    /* Exec format error */
#define    EBADF         9    /* Bad file number */
#define    ECHILD       10    /* No child processes */
#define    EAGAIN       11    /* Try again */
#define    ENOMEM       12    /* Out of memory */
#define    EACCES       13    /* Permission denied */
#define    EFAULT       14    /* Bad address */
#define    ENOTBLK      15    /* Block device required */
#define    EBUSY        16    /* Device or resource busy */
#define    EEXIST       17    /* File exists */
#define    EXDEV        18    /* Cross-device link */
#define    ENODEV       19    /* No such device */
#define    ENOTDIR      20    /* Not a directory */
#define    EISDIR       21    /* Is a directory */
#define    EINVAL       22    /* Invalid argument */
#define    ENFILE       23    /* File table overflow */
#define    EMFILE       24    /* Too many open files */
#define    ENOTTY       25    /* Not a typewriter */
#define    ETXTBSY      26    /* Text file busy */
#define    EFBIG        27    /* File too large */
#define    ENOSPC       28    /* No space left on device */
#define    ESPIPE       29    /* Illegal seek */
#define    EROFS        30    /* Read-only file system */
#define    EMLINK       31    /* Too many links */
#define    EPIPE        32    /* Broken pipe */
#define    EDOM         33    /* Math argument out of domain of func */
#define    ERANGE       34    /* Math result not representable */

#define    EDEADLK      35    /* Resource deadlock would occur */
#define    ENAMETOOLONG 36    /* File name too long */
#define    ENOLCK       37    /* No record locks available */
#define    ENOSYS       38    /* Function not implemented */
#define    ENOTEMPTY    39    /* Directory not empty */
#define    ELOOP        40    /* Too many symbolic links encountered */
#define    EWOULDBLOCK  41    /* Operation would block */
#define    ENOMSG       42    /* No message of desired type */
#define    EIDRM        43    /* Identifier removed */
#define    ECHRNG       44    /* Channel number out of range */
#define    EL2NSYNC     45    /* Level 2 not synchronized */
#define    EL3HLT       46    /* Level 3 halted */
#define    EL3RST       47    /* Level 3 reset */
#define    ELNRNG       48    /* Link number out of range */
#define    EUNATCH      49    /* Protocol driver not attached */
#define    ENOCSI       50    /* No CSI structure available */
#define    EL2HLT       51    /* Level 2 halted */
#define    EBADE        52    /* Invalid exchange */
#define    EBADR        53    /* Invalid request descriptor */
#define    EXFULL       54    /* Exchange full */
#define    ENOANO       55    /* No anode */
#define    EBADRQC      56    /* Invalid request code */
#define    EBADSLT      57    /* Invalid slot */

#define    EDEADLOCK    EDEADLK

#define    EBFONT       59    /* Bad font file format */
#define    ENOSTR       60    /* Device not a stream */
#define    ENODATA      61    /* No data available */
#define    ETIME        62    /* Timer expired */
#define    ENOSR        63    /* Out of streams resources */
#define    ENONET       64    /* Machine is not on the network */
#define    ENOPKG       65    /* Package not installed */
#define    EREMOTE      66    /* Object is remote */
#define    ENOLINK      67    /* Link has been severed */
#define    EADV         68    /* Advertise error */
#define    ESRMNT       69    /* Srmount error */
#define    ECOMM        70    /* Communication error on send */
#define    EPROTO       71    /* Protocol error */
#define    EMULTIHOP    72    /* Multihop attempted */
#define    EDOTDOT      73    /* RFS specific error */
#define    EBADMSG      74    /* Not a data message */
#define    EOVERFLOW    75    /* Value too large for defined data type */
#define    ENOTUNIQ     76    /* Name not unique on network */
#define    EBADFD       77    /* File descriptor in bad state */
#define    EREMCHG      78    /* Remote address changed */
#define    ELIBACC      79    /* Can not access a needed shared library */
#define    ELIBBAD      80    /* Accessing a corrupted shared library */
#define    ELIBSCN      81    /* .lib section in a.out corrupted */
#define    ELIBMAX      82    /* Attempting to link in too many shared libraries */
#define    ELIBEXEC     83    /* Cannot exec a shared library directly */
#define    EILSEQ       84    /* Illegal byte sequence */
#define    ERESTART     85    /* Interrupted system call should be restarted */
#define    ESTRPIPE     86    /* Streams pipe error */
#define    EUSERS       87    /* Too many users */
#define    ENOTSOCK     88    /* Socket operation on non-socket */
#define    EDESTADDRREQ 89    /* Destination address required */
#define    EMSGSIZE     90    /* Message too long */
#define    EPROTOTYPE   91    /* Protocol wrong type for socket */
#define    ENOPROTOOPT  92    /* Protocol not available */
#define    EPROTONOSUPPORT    93    /* Protocol not supported */
#define    ESOCKTNOSUPPORT    94    /* Socket type not supported */
#define    EOPNOTSUPP   95    /* Operation not supported on transport endpoint */
#define    EPFNOSUPPORT 96    /* Protocol family not supported */
#define    EAFNOSUPPORT 97    /* Address family not supported by protocol */
#define    EADDRINUSE   98    /* Address already in use */
#define    EADDRNOTAVAIL      99    /* Cannot assign requested address */
#define    ENETDOWN     100    /* Network is down */
#define    ENETUNREACH  101    /* Network is unreachable */
#define    ENETRESET    102    /* Network dropped connection because of reset */
#define    ECONNABORTED 103    /* Software caused connection abort */
#define    ECONNRESET   104    /* Connection reset by peer */
#define    ENOBUFS      105    /* No buffer space available */
#define    EISCONN      106    /* Transport endpoint is already connected */
#define    ENOTCONN     107    /* Transport endpoint is not connected */
#define    ESHUTDOWN    108    /* Cannot send after transport endpoint shutdown */
#define    ETOOMANYREFS 109    /* Too many references: cannot splice */
#define    ETIMEDOUT    110    /* Connection timed out */
#define    ECONNREFUSED 111    /* Connection refused */
#define    EHOSTDOWN    112    /* Host is down */
#define    EHOSTUNREACH 113    /* No route to host */
#define    EALREADY     114    /* Operation already in progress */
#define    EINPROGRESS  115    /* Operation now in progress */
#define    ESTALE       116    /* Stale NFS file handle */
#define    EUCLEAN      117    /* Structure needs cleaning */
#define    ENOTNAM      118    /* Not a XENIX named type file */
#define    ENAVAIL      119    /* No XENIX semaphores available */
#define    EISNAM       120    /* Is a named type file */
#define    EREMOTEIO    121    /* Remote I/O error */
#define    EDQUOT       122    /* Quota exceeded */

#define    ENOMEDIUM    123    /* No medium found */
#define    EMEDIUMTYPE  124    /* Wrong medium type */
#define    ECANCELED    125    /* Operation Canceled */
#define    ENOKEY       126    /* Required key not available */
#define    EKEYEXPIRED  127    /* Key has expired */
#define    EKEYREVOKED  128    /* Key has been revoked */
#define    EKEYREJECTED 129    /* Key was rejected by service */

/* for robust mutexes */
#define    EOWNERDEAD          130    /* Owner died */
#define    ENOTRECOVERABLE     131    /* State not recoverable */

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

Linux 内核错误码的更多相关文章

  1. 使用FormatMessage函数编写一个内核错误码查看器

    在编写驱动程序的时候,常用的一个结构是NTSTATUS,它来表示操作是否成功,但是对于失败的情况它的返回码过多,不可能记住所有的情况,应用层有一个GetLastError函数,根据这个函数的返回值可以 ...

  2. 写给初学者的Linux errno 错误码机制

    不同于Java的异常处理机制, 当你使用C更多的接触到是基于错误码的异常机制, 简单来说就是当调用的函数发生异常时, 程序不会跳转到一个统一处理异常的地方, 取而代之的是返回一个整型错误码. 可能会有 ...

  3. linux的错误码error

    在程序出错时,我们通过全局变量错误号errno和perror函数能够很快的定位到错误原因. Linux错误代码及其含义 C Name Value Description 含义Success 0 Suc ...

  4. Linux的错误码

    在使用时需要包含头文件 #include <errno.h> merlin@tfAnalysis:~/projects/tfradius$ cat /usr/include/asm-gen ...

  5. Linux环境下错误码及意义总结

    Linux的错误码包含在/usr/include/asm-generic/errno-base.h和/usr/include/asm-generic/errno.h 这两个文件内: #ifndef _ ...

  6. 《Linux内核设计与实现》读书笔记 第五章 系统调用

    第五章系统调用 系统调用是用户进程与内核进行交互的接口.为了保护系统稳定可靠,避免应用程序恣意忘形. 5.1与内核通信 系统调用在用户空间进程和硬件设备间添加了一个中间层, 作用:为用户空间提供了一种 ...

  7. 《Linux内核设计与实现》CHAPTER5阅读梳理

    <Linux内核设计与实现>CHAPTER5阅读梳理 [学习时间:2.5hours] [学习内容:系统调用的概念.功能及实现:系统调用的创建和使用方法] CHAPTER5 系统调用 1.系 ...

  8. 【request_firmware】 linux内核下载模块固件接口【转】

    转自:http://blog.csdn.net/magod/article/details/6049558 [-] 8 处理固件 1481 内核固件接口 1482 它如何工作 14.8. 处理固件 作 ...

  9. [内核同步]浅析Linux内核同步机制

    转自:http://blog.csdn.net/fzubbsc/article/details/37736683?utm_source=tuicool&utm_medium=referral ...

随机推荐

  1. Ubuntu --- 安装deb包

    在Ubuntu下安装deb包需要使用dpkg命令.Dpkg 的普通用法: 1.sudo dpkg -i <package.deb> 安装一个 Debian 软件包,如你手动下载的文件. 2 ...

  2. Web Worker 使用教程【转】

    原文:http://www.ruanyifeng.com/blog/2018/07/web-worker.html 一.概述 JavaScript 语言采用的是单线程模型,也就是说,所有任务只能在一个 ...

  3. Windows环境下的安装gcc(c语言环境)

    Windows 具有良好的界面和丰富的工具,所以目前 linux 开发的流程是, windows 下完成编码工作, linux 上实现编译工作. 为了提高工作效率,有必要在 windows 环境下搭建 ...

  4. vue入门|ElementUI使用指南

    vue入门|ElementUI使用指南 1.开发前务必熟悉的文档: vue.js2.0中文,项目所使用的js框架 vue-router,vue.js配套路由 vuex 状态管理 Element UI框 ...

  5. 多层nginx中的压缩问题 api接口>1M数据的返回浏览器 网关

    基础 前端异步请求,局部刷新,加大最大等待时间 nginx开启压缩 进阶 多级nginx的压缩 实践测试: 每级都要开启压缩 gizp on: 最外层开启,但最内层没有开启 最外层没有开启 最外层.最 ...

  6. PHP如何防止注入及开发安全

    1.PHP注入的基本原理 程序员的水平及经验也参差不齐,相当大一部分程序员在编写代码的时候,没有对 用户输入数据的合法性进行判断,使应用程序存在安全隐患.用户可以提交一段数据 库查询代码,根据程序返回 ...

  7. leetcode 542. 01 Matrix 、663. Walls and Gates(lintcode) 、773. Sliding Puzzle 、803. Shortest Distance from All Buildings

    542. 01 Matrix https://www.cnblogs.com/grandyang/p/6602288.html 将所有的1置为INT_MAX,然后用所有的0去更新原本位置为1的值. 最 ...

  8. Mac 打开、编辑 .bash_profile 文件

    export PATH=${PATH}:/Users/loaderman/Library/Android/sdk/platform-tools export PATH=${PATH}:/Users/l ...

  9. Qt Http get

    1.直接建立连接,向网站发送http请求 QNetworkAccessManager *accessManager = new QNetworkAccessManager(this); connect ...

  10. Egret中的对象池Pool

    为了可以让对象复用,防止大量重复创建对象,导致资源浪费,使用对象池来管理. 一 对象池A 二 对象池B 一 对象池A 1. 支持传入构造函数 2. 支持预先创建对象 3. 支持统一执行函数 /** * ...