本站总访问量
次
Category: Unix环境高级编程 - Jerry的小站
Sorry, your browser cannot access this site
This page requires browser support (enable) JavaScript
Learn more >
博客
分类
标签
关于
更多
暗黑模式
博客
分类
标签
关于
更多
暗黑模式
Jerry Gao
上帝就是真理,真理就是上帝
博客
分类
关于
Unix环境高级编程-守护线程
概念是生存期长的一种进程,常常在系统引导装入时启动,仅在系统关闭时终止,没有控制终端,所以在后台运行 守护进程的特征系统进程依赖于操作系统实现,父进程ID为0的各进程通常是内核进程,作为系统装入过程的一部分而启动(init进程是个例外,由内核在引导装入时启动用户层次的命令)内核进程是特殊的,通常存在于系统的整个生命周期中,一超级用户权限运行,无控制终端,无命令行。 Linux使用一个名为kt...
2020-10-31
Linux
Unix环境高级编程
Linux
Unix环境高级编程
Read More
Unix环境高级编程-文件和目录
文件和目录描述文件系统的其他特征和文件的性质 函数 stat、fstat、fstatat和lstat一旦给出pathname,stat函数将返回与此命名文件有关的信息结构。 fstat函数获得已在描述符fd上打开该文件的有关信息。 lstat返回该符号链接的有关信息,而不是由该链接引用的文件的信息 fstatat函数为一个相对于当前打开目录的路径名返回文件统计信息,当AT_SYMLINK_N...
2020-10-31
Linux
Unix环境高级编程
Linux
Unix环境高级编程
Read More
Unix环境高级编程-文件IO
文件IOopen read write lseek close 文件描述符文件描述符是一个非负整数。当打开或者创建一个文件时,内核向进程返回一个文件描述符。当读写一个文件时,使用open或者create返回的 文件描述符变化范围是0~OPEN_MAX-1,早期的Unix文件系统实现采用上限值是19,即允许每个进程最多打开20个文件,但现在很多系统将其上限增加至63. 在Linux里面,每个进...
2020-10-31
Linux
Unix环境高级编程
Linux
Unix环境高级编程
Read More
Unix环境高级编程-进程
进程标识ID为0的进程通常是调度进程,常常被称为交换进程,是内核的一部分,并不执行磁盘中的程序,常被称作系统进程。 ID为1的进程是init进程,在自举结束时由内核调用。init进程通常读取与进程有关的初始化文件(/etc/init.d等)并将系统引导到一个状态。init进程不会终止,他是一个用户进程,但是以超级用户特权运行。 ID为2的进程是页守护进程,负责虚拟存储器系...
2020-10-31
Linux
Unix环境高级编程
Linux
Unix环境高级编程
Read More
Unix环境高级编程-信号
信号信号是软件中断 信号概念很多条件产生信号: 当用户按某些键时,引发终端产生的信号(delete或者是Ctrl+C)产生中断信号SIGINT 硬件异常产生信号;除数为0、无效的内存引用等。由硬件检测到,并通知内核,然后内核为该条件发生时正在运行的进程产生适当的信号。 进程调用kill函数可将任意信号发送给另一个进程或进程组 用户可用kill命令将信号发送给其他进程 当检测到某种软件条件已...
2020-10-31
Linux
Unix环境高级编程
Linux
Unix环境高级编程
Read More
Unix环境高级编程-线程
线程线程概念每个线程都包含有表示执行环境所必需的信息,其中包括进程中标识线程的线程ID、一组寄存器值、栈、调度优先级和策略、信号屏蔽字、error变量以及线程私有数据。一个进程的所有信息对线程都是共享的,包括可执行程序的代码、程序的全局内存和堆内存、栈以及文件描述符。 线程同步互斥量本质上是一把锁,在访问共享资源之前对互斥量进行加锁操作,访问完成后释放互斥量。 避免死锁死锁系统中若干线程形成...
2020-10-31
Linux
Unix环境高级编程
Linux
Unix环境高级编程
Read More