Linux操作系统实验教程
✍ Scribed by 罗宇
- Year
- 2009
- Tongue
- Chinese
- Leaves
- 174
- Category
- Library
No coin nor oath required. For personal study only.
✦ Synopsis
本书是国防科技大学国家精品课程“操作系统”配套教材,系统地讲解了Linux操作系统原理和基于Linux的各种编程,特别是Linux操作系统内核编程。本书内容分为三部分:部分介绍Linux操作系统原理;第二部分介绍10个基于Linux的实验;第三部分附录包含Linux环境下的操作及与编程有关的命令和函数列表。
本书适合作为高等学校计算机科学与技术、软件工程、信息安全、信息与计算科学、信息管理与信息系统等专业操作系统实验和课程设计教材,也是Linux开发人员熟悉Linux环境下应用及内核编程的入门参考书。
✦ Table of Contents
内 容 简 介
前 言
目 录
第一部分 Linux操作系统基本原理
第1章 Linux操作系统简介
1.1 Linux的渊源和发展简史
1.2 Linux的基本特性
1.3 Linux内核的开发模式与内核版本号
1.4 Linux发行版介绍
1.5 Linux内核源代码组织结构
1.6 学习Linux的辅助软件介绍
第2章 Linux的进程管理
2.1 进程与进程描述符
2.2 进程状态及切换时机
2.2.1 Linux的进程状态
2.2.2 进程的切换时机
2.3 进程的调度算法
2.4 进程的创建与消亡
第3章 Linux的存储器管理
3.1 物理内存的管理
3.1.1 页帧与区域
3.1.2 伙伴算法
3.1.3 slab分配器
3.2 进程地址空间的管理
3.2.1 页表机制
3.2.2 vm_area_struct结构
3.2.3 进程地址空间的相关系统调用
3.2.4 页面异常的处理
第4章 Linux的文件系统
4.1 VFS
4.1.1 VFS的作用
4.1.2 进程描述符中与文件系统相关的成员
4.1.3 VFS的文件模型
4.1.4 文件系统的注册与安装
4.1.5 各种对象的操作接口
4.2 EXT2文件系统
4.2.1 EXT2在磁盘上的物理布局
4.2.2 主要的数据结构及其基本操作
4.2.3 磁盘块的分配与释放
4.3 主要文件系统的系统调用处理流程
4.3.1 文件的open操作
4.3.2 文件的read操作
第5章 Linux的设备管理
5.1 设备文件的概念
5.2 设备模型基础
5.3 相关数据结构
5.3.1 字符设备管理
5.3.2 块设备管理
5.3.3 buffer
5.3.4 设备请求队列和I/O调度算法
5.4 块设备文件的open和read操作
5.4.1 块设备驱动程序组成
5.4.2 open函数
5.4.3 read函数
第6章 中断、异常及系统调用
6.1 中断和异常的基本知识
6.2 异常处理函数
6.3 系统调用
6.4 中断的处理
6.4.1 中断控制器
6.4.2 管理中断的数据结构
6.4.3 中断的处理过程
6.5 软中断
第7章 Sys V进程间通信
7.1 共有的特性
7.2 信号量
7.3 消息队列
7.4 共享内存
第二部分 基于Linux操作系统的实验
第8章 用户态编程实验
8.1 实验1——bash脚本编程
8.1.1 实验内容
8.1.2 bash脚本编程简介
8.1.3 实验指南
8.2 实验2——观察Linux行为
8.2.1 实验内容
8.2.2 proc文件系统简介
8.2.3 实验指南
8.3 实验3——实现Linux命令解释器
8.3.1 实验内容
8.3.2 myshell的语法
8.3.3 myshell的程序框架
8.3.4 myshell命令行的语法分析
8.3.5 简单命令的执行
8.3.6 myshell的Makefile
8.3.7 实验指南
第9章 内核编程基础实验
9.1 实验4——内核模块
9.1.1 实验内容
9.1.2 Linux内核模块简介
9.1.3 内核符号表
9.1.4 内核模块编程介绍
9.1.5 实验指南
9.1.6 测试
9.2 实验5——proc文件系统编程
9.2.1 实验内容
9.2.2 proc文件系统编程简介
9.2.3 实验指南
9.3 实验6——编译内核及增加Linux系统调用
9.3.1 实验内容
9.3.2 Fedora下编译内核
9.3.3 添加psta系统调用
9.3.4 测试新增系统调用psta
9.3.5 noexec系统调用的实现
第10章 内核编程综合实验
10.1 实验7——进程隐藏
10.1.1 实验内容
10.1.2 背景知识介绍
10.1.3 proc文件系统实现简介
10.1.4 实验指南
10.2 实验8——字符设备驱动开发
10.2.1 实验内容
10.2.2 字符设备驱动开发介绍
10.2.3 字符设备chatdev的实现
10.2.4 聊天程序chat的实现
10.3 实验9——naive文件系统的设计与实现
10.3.1 实验内容
10.3.2 项目的准备工作及建议
10.3.3 实验指南
10.4 实验10——块设备驱动开发
10.4.1 实验内容
10.4.2 实验基础和思路
10.4.3 U盘驱动的帮助函数
10.4.4 实验指南
第三部分 Linux环境下的操作及常用命令和函数
附录A Linux常用命令
附录B Linux常用函数
附录C 内核配置文件的生成
📜 SIMILAR VOLUMES
本书从易用性和实用性角度出发,主要以终端命令方式介绍Linux系统的应用知识,并以CentOS 7.4中文版为基础进行编写。全书共分12章,内容包括Linux操作系统概述、Linux系统的环境搭建、Linux操作基础、Linux文件系统、Linux系统管理、vi编辑器的使用、Shell程序设计、Linux的网络服务、Linux系统下的数据库应用、Linux系统的远程管理、Linux系统的安全管理以及Linux系统下的编程等知识。 本书是众多Linux用户、系统运维人员和项目开发人员学习与应用Linux系统的理想参考书,可作为高等院校计算机相关专业的教材,也可作为各类Linux教学的培训教材及自
本书以操作系统的基本功能(处理机管理、存储管理、文件系统、设备管理和用户接口)为主线介绍操作系统的相关概念、基本原理和基本方法,对进程管理的相关问题: 进程的概念、描述、状态机器转换、进程控制、互斥、同步、通信和死锁做了详细阐述。简单介绍了其他几种类型的操作系统,并对Linux操作系统进行了剖析。本书注重理论与实践相结合,每章都配有相关习题,最后一章安排了6个实验。 本书可以作为普通高等院校计算机科学与技术及相关本科专业的教学用书或参考书,也可作为计算机及相关专业考研的参考书,还可供计算机技术领域相关人员参考。
<p>《清华大学计算机系列教材:操作系统实验指导》是操作系统课程的实验教材,旨在帮助读者加强对操作系统原理与设计实现的理解,以分析、设计、改进和实现一个微型但全面的操作系统——ucore为基本目标,通过增量式地完成8个基于ucore操作系统实验为操作系统实践环节,最终让读者了解并掌握操作系统的原理、设计与实现。</p>
Linux操作系统近几年受到越来越多的关注和应用,为了更好地应用和学习Linux,特别编写了本教材。本书以最新版的Ubuntu 操作系统为蓝本,全面、系统地介绍了Linux操作系统的基本操作、常用命令、脚本编写、Shell编程,网络通信、服务器配置等知识。通过学习,读者将熟悉Linux平台、系统了解与掌握Linux操作系统的基础和应用,为进一步学习Linux的内部机理和深入编程奠定基础。全书共分10章。以Linux的应用为主线展开,其内容涉及Linux的安装、Linux常用命令与使用、Linux的网络通信、Linux的脚本编写、进程与文件管理,Linux系统的用户管理,多种服务器的配置与管理等
本书以教育部《信息安全类专业指导性专业规范》所列知识点为基础,以构建信息系统安全保障体系为目标,从信息系统体系结构角度,按照物理安全、操作系统安全、数据库安全、网络安全、应用系统安全的主线组织实验内容。全书共11章,每章均有实验原理、实验步骤的详细介绍,并通过练习题进一步拓展知识。第1章介绍了信息系统安全实验环境的构建; 第2章介绍了存储介质的数据恢复和安全删除技术; 第3章介绍了针对口令的字典攻击、暴力破解、彩虹表破解等方法; 第4、5章分别介绍Windows、Linux的安全机制和配置方法; 第6章从账户管理、访问控制、备份与恢复等几个方面介绍了典型数据库管理系统SQL Server的安全