linux也是属于类Unix操作系统,但是其具有一些特殊的特性,因此这里在初始化时会专门针对Linux做一些特殊的处理。
1. os/unix/ngx_linux_init.c源文件
文件内容如下:
1.1 Linux操作系统环境下IO操作
这里NGX_HAVE_SENDFILE
为1,NGX_IO_SENDFILE
也在ngx_os.h头文件中被定义为1,表明当前针对sendfile
有专用的高效发送函数。
1.2 获得操作系统内核类型及版本号
我们也可以通过如下命令来进行获取:
# uname -s
# uname -r
针对当前我们当前的环境,写如下程序进行测试:
编译运行:
# gcc -o test1 test1.c
# ./test1
sysname: Linux
release: 4.10.0-35-generic
1.3 打印操作系统类型及版本相关信息