摘要:
第12章 块设备I/O和缓冲区管理 知识总结 解释块设备I/O的原理和I/O缓冲的优点 介绍Unix的缓冲区管理算法 利用信号量设计新的缓冲区管理算法,以提高I/O缓冲区的缓存效率和性能 介绍简单的PV算法及其特点 基本概念 读写普通文件的算法依赖于两个关键操作,即get_block和put_blo 阅读全文
摘要:
信号和信号处理 知识点总结 介绍信号和中断的统一处理,有助于从正确的角度看待信号; 将信号视为进程中断,将进程从正常执行转移到信号处理; 解释信号的来源; 解释Unix/Linux 中的信号处理,包括信号类型、信号向量位、信号掩码位、进程PROC结构体中的信号处理程序以及信号处理步骤; 讨论将信号用 阅读全文
摘要:
第5章定时器及时钟服务 本章讨论了定时器和定时器服务;介绍了硬件定时器的原理和基于Intel x86 的PC中的硬件定时器;讲解了CPU操作和中断处理;描述了Linux中与定时器相关的系统调用、库函数和定时器服务命令;探讨了进程间隔定时器、定时器生成的信号,并通过示例演示了进程间隔定时器。编程项目的 阅读全文
摘要:
Linux文件系统的三层抽象 目录文件 /bin: bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。 /boot: 这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。 /dev : dev 是 Device(设备) 的缩写, 该 阅读全文
摘要:
学习PWD命令 pwd -P 目录连接链接时,pwd -P 显示出实际路径,而非使用连接(link)路径;pwd显示的是连接路径。 研究pwd实现需要用的系统调用 查看哪些可以用的显示文件 实现思路: 通过特殊的文件名”.”获取当前目录的inode-number(假设当前目录为a) 通过特殊的文件名 阅读全文
摘要:
第四章 linux并发编程 核心思路 本章论述了并发编程,介绍了并行计算的概念。指出了并行计算的重要性∶比较了顺序算法与并行算法,以及并行性与并发性;解释了线程的原理及其相对于进程的优势;介绍了Pthread中的线程操作,包括线程管理函数,互斥量、连接、条件变量和屏障等线程同步工具;解释了死锁问题, 阅读全文
摘要:
第三章 Unix/Linux进程管理 本章讨论了Unix/inux 中的进程管理;阐述了多任务处理原则;介绍了进程概念;并以一个编程示例来说明多任务处理、上下文切换和进程处理的各种原则和方法。 多任务处理 一般来说,==多任务处理指的是同时进行几项独立活动的能力。== 比如,我们经常看到有人 阅读全文
摘要:
第11章 EXT2文件系统 什么是EXT2文件系统? Linux一直使用EXT2作为默认文件系统。 EXT3是EXT2的扩展。EXT3中增加的内容是一个日志文件,将文件系统中的变更记录在日志中,日志可以在系统崩溃时更快的从错误中恢复。 磁盘的基本概念: 扇区为最小的物理存储单位,每个扇区为512字节 阅读全文
摘要:
第7 8章 文件操作 使用系统调用进行文件操作 本章讨论了多种文件系统,解释操作系统中各种操作级别 文件存储准备存储设备 内核中的文件系统支持函数 系统调用 文件流上的I/O库函数 用户命令 各种操作的sh脚本; 系统性概括了各种操作, 用户空间的文件流读/写到内核空间的系统调用,直到底层的设备I/ 阅读全文
摘要:
第十章 shell编程 程序设计语言必备的要素和技能 程序设计语言的含义 程序设计语言是用于书写计算机程序的语言。 语言的基础是一组记号和一组规则。 根据规则由记号构成的记号串的总体就是语言。在程序设计语言中,这些记号串就是程序。 程序设计语言有3个方面的因素,即语法、语义和语用。语法表示程序的结构 阅读全文