Linux
-
LinuX操作系统实训教程陈忠文 主编本书着眼于高职高专应用型人才培养,注重实际应用,在讲解操作系统理论的同时重点介绍了Linux系统的网络使用。本书共分6章,包括操作系统基础知识、RedHatLinux9的安装与启动、Linux基本操作、Linux其他管理、常用网络服务和系统安全运行与管理。.本书由具有多年实践教学经验的一线教师编写,充分体现了高职高专教学的特色,理论上必需、够用,注重理论联系实际,突出实用性、操作性,语言上通俗易懂,做到了老师好教、学生易学。... -
Linux操作系统实验与实训何文华编著本书是《操作系统——Linux篇》的配套实验、实训教材。本书试图通过Red Hat Linux操作系统提供一套网络操作系统的实验、实训方案,除提供一系列完善的网络操作系统实验方案、详细的实验过程和操作外,还对基本的实验和实训内容作了适当的分析,并提供了一定的理论指导。 本书包含18个相对独立的实验,以Red Hat Linux 9.0作为实验环境,对网络操作系统的使用、网络的配置、进程管理、内存管理、文件管理、内核编译、网络服务器(WWW、DNS、FTP、DHCP)、邮件服务器的安装与配置和拨号网络等方面提供详细的实验方案,并提供一套用Linux作为路由器的使用方案。除此之外,还提供两个网络操作系统的实训(设计)方案,作为学生网络操作系统的实训或课程设计内容。 本书是高职高专院校教材,既可作为操作系统的配套实训教材,也可以单独使用,亦可供Linux爱好者参考使用。 -
操作系统原理与应用李京平、孙悦本书是全国教育科学“九五”规划重点研究项目成果,体现全新高职高专教育教学理念、当今IT专业领域主流技术和技能,是新时代高职高专计算机相关专业首选教材。.本书由8章构成,内容包括:绪论,操作系统接口,处理机管理,存储器管理,文件系统,设备管理,操作系统的结构与设计,分布式操作系统等内容。..本书内容安排合理、重点突出、讲解清楚,突出面向实践、重在应用的特点,每章后面都附有大量相关习题。通过本书的学习,主要让学生了解Linux操作系统的基本概念、基本原理和基本实现技术。本书可作为高职高专及各类高等院校计算机相关专业操作系统课程的教材,也可作为非计算机专业操作系统或Linux操作系统选修课教材。... -
Red Hat Linux9入门与提高实用教程方建超, 刘志宝编著Red Hat Linux无疑是Lmux家族中最为流行的版本。本书从实用的角度,介绍了Red Hat Linux 9的基本操作及其主要应用。本书分为3大部分,共14章,主要介绍了Red Hat Linux 9的安装与配置、GNOME图形界面的基本操作、常用的shall命令、Linux的日常应用和Red Hat Linux 9的服务器设置等内容。 本书内容详尽、图文并茂、结构清晰、实用性强,可作为高等院校计算机及其相关专业的教材,也是想进入Linux世界的初学者的首选用书,同时对从事Linux系统管理和服务器架设的专业技术人员也有一定的参考价值。 -
Linux与嵌入式系统李善平, 刘文峰, 王焕龙编著Linux是个优秀的操作系统,嵌入式系统则是近年来的热门话题。本书既是作者在运用Linux研究和开发嵌入式系统的过程中资料与经验的总结,也是把二者结合起来的集中体现。书中有对主流嵌入式操作系统、Linux操作系统、基于Linux的嵌入式操作系统的综述,更主要的是系统介绍了利用Linux开发嵌入式系统的关键技术和方法。同时,本书精选了作者研发的几个嵌入式系统的案例(机顶盒、宽带路由器、基于Linux的家用网关的设计与实现等)奉献给大家,希望能对读者有所帮助。本书内容丰富、层次清晰、力求较强的实践性和应用性,可作为高等学校有关嵌入式系统教学的教材,也可作为嵌入式系统开发与应用的参考书。 目录第1章嵌入式系统 11.1关于嵌入式系统 11.1.1嵌入式系统概念 11.1.2嵌入式处理器 21.2关于嵌入式操作系统 41.2.1从嵌入式系统到嵌入式操作系统 41.2.2典型的嵌入式操作系统 51.3嵌入式操作系统的应用 71.4典型嵌入式系统 91.4.1VxWorks和pSOS 91.4.2OSKit 161.4.3Palm OS 211.4.4μC/OS和μC/OS-II 241.4.5QNX实时操作系统 28第2章Linux 332.1Linux简介 332.1.1Linux的历史 332.1.2Linux的发行版本 342.1.3Linux的特点 362.2Linux内核 372.2.1内核概况 372.2.2进程管理 392.2.3存储管理 472.2.4文件系统管理 582.2.5设备管理 682.2.6系统启动 732.3Linux应用 752.3.1Linux在大型服务器上的应用 752.3.2Linux在桌面端的应用 762.3.3Linux在嵌入式环境中的应用 772.4主流嵌入式Linux系统 782.4.1μClinux 782.4.2RTLinux和RTAI 802.4.3MontaVista Linux 842.4.4LynxOS 87第3章嵌入式系统开发过程 903.1需求分析和概要设计 903.1.1嵌入式系统的概念和组成 903.1.2系统需求分析 903.1.3系统结构模型建立方式 913.1.4系统结构模型实现流程 923.2硬件 933.2.1嵌入式处理器 933.2.2存储设备 943.2.3外围设备 953.2.4典型的嵌入式系统开发平台 973.2.5Lineo的μCSimm 983.2.6ARM的ARM Evaluator-7T 1023.3软件 1063.3.1嵌入式系统的软件组成 1063.3.2嵌入式软件的基本开发流程 1093.3.3嵌入式操作系统 1103.4嵌入式系统软件开发过程 1113.4.1开发 1113.4.2编译和连接 1123.4.3重定位和下载 1133.4.4调试 113第4章嵌入式Linux系统的开发技术 1164.1快速启动 1164.2开机画面 1214.2.1隐藏字符信息 1214.2.2显示用户定义的画面 1224.3ramdisk技术 1234.4系统小型化 1254.4.1内核配置 1254.4.2嵌入式C库 1274.4.3小型shell 1304.5系统移植 1324.5.1建立交叉编译环境 1324.5.2内核移植 1364.5.3bootloader 139第5章嵌入式Linux系统的进程 1415.1Linux在实时方面的缺陷 1415.2Linux实时化的关键问题 1435.3Linux实时化改造的典型方法 1445.3.1外部实时性扩展 1445.3.2内部实时性改造 1605.4实时应用程序的编写 1645.5实时程序的测试 167第6章嵌入式Linux系统的存储管理 1696.1缺少MMU支持的内存管理 1696.1.13种内存管理模型 1706.1.2标准Linux的内存管理 1706.1.3μClinux的内存管理 1716.1.4μClinux内存管理的局限性 1726.2μClinux内存管理的实现 1736.2.1内存管理数据结构 1736.2.2物理空间管理 1746.2.3内核内存的申请和释放 1756.2.4内存映射 1766.3内存管理模块的启动初始化 1786.3.1setup_arch() 1786.3.2paing_init() 1796.3.3free_area_init() 1806.3.4mem_init() 1806.4可执行程序的加载 1806.4.1用户程序的内存分布 1806.4.2reloc段机制 1816.4.3flat可执行文件格式 1826.4.4执行文件加载流程 183第7章嵌入式Linux系统的文件系统 1877.1嵌入式系统的存储 1877.2文件系统类型 1887.2.1cramfs 1887.2.2romfs 1907.3日志文件系统 1937.3.1文件系统完整性 1937.3.2日志文件系统 1947.3.3jffs与jffs2文件系统 1957.3.4ReiserFS文件系统 1977.3.5ext3文件系统 1987.3.6xfs文件系统 1997.4文件系统的结构 2007.4.1/etc 2017.4.2/bin 2047.4.3/sbin 2057.4.4/dev 2067.5小结 207第8章嵌入式Linux的GUI 2088.1嵌入式GUI 2088.1.1嵌入式GUI的概念 2088.1.2一些成熟的嵌入式GUI 2098.2典型的嵌入式GUI-Microwindows 2108.2.1Microwindows的设备驱动 2118.2.2与设备无关的图形引擎 2148.2.3Nano-X的窗口管理和API 2188.2.4Microwindows在Linux Frame Buffer上运行 2298.3其他知名嵌入式GUI 2308.3.1面向实时的MiniGUI 2308.3.2应用广泛的Qt/Embedded 2328.4嵌入式GUI的应用 2338.4.1嵌入式GUI上的其他软件 2338.4.2嵌入式GUI的应用 2368.5小结 237第9章嵌入式Linux系统的网络互联及其优化技术 2389.1嵌入式Internet及其应用 2389.1.1嵌入式Internet技术的兴起 2389.1.2嵌入式Internet技术 2409.2网络协议栈的定制 2439.2.1Linux的网络代码分布及特点 2439.2.2网络部分内核编译配置 2459.2.3TCP/IP协议的定制 2479.3Linux中TCP/IP协议应用优化技术 2539.3.1实现快速上下文切换的设想 2539.3.2网络服务器 2559.4Linux IP报文转发及防火墙实现分析 2609.4.1IP数据报文流 2609.4.2netfilter框架 2639.4.3netfilter的网络地址转换(NAT)的实现 2679.4.4IPTables: netfilter体系的规则载体 2719.5基于Linux的家庭网关及其优化技术 2739.5.1改变网络设备的工作模式 2749.5.2转发报文不再往上经由IP层 2779.5.3NAT的重写 280第10章嵌入式系统集成开发环境 28610.1综述 28710.1.1集成开发环境 28710.1.2嵌入式软件开发 28810.1.3Python开发环境 29110.2代码编辑模块 29210.2.1代码编辑功能 29210.2.2PygtkScintilla 29310.2.3EideP代码编辑模块的实现 29410.3软件调试模块 29610.3.1软件调试功能简介 29610.3.2gdb前端(front-end)软件分析 29710.3.3gdb图形前端的实现 29810.3.4输出信息提取的实现 30010.3.5功能实现 30110.4JTAG在线调试的实现 30210.4.1标准的JTAG协议 30310.4.2PXA255中JTAG调试接口协议 30510.4.3PXA255中debug相关的寄存器及其访问方式 30710.4.4PXA255中debug相关的JTAG命令 31210.4.5JTAG在线调试实现思想 31410.4.6底层JTAG操作模块 31510.4.7host debugger 31810.4.8Pygdbserver 32610.4.9debug handler 32910.4.10用JTAG调试的例子 33310.5小结 335第11章嵌入式系统案例:机顶盒 33611.1机顶盒需求分析 33611.1.1机顶盒基本概念 33611.1.2所需功能 33711.2机顶盒概要设计 33811.2.1建立需求库 33811.2.2进行需求映射 33911.3机顶盒硬件设计 34011.4机顶盒软件设计 34111.4.1GUI设计 34311.4.2系统裁减和压缩 34811.4.3网络设计 35511.4.4系统启动优化 35811.5小结 359第12章嵌入式系统案例:宽带路由器 36012.1宽带路由器及Nanos操作系统 36012.1.1典型宽带路由器的功能 36012.1.2Nanos操作系统 36112.2操作系统的设计 36112.2.1Nanos操作系统的设计思想 36112.2.2关键部分的设计思想 36212.3任务管理的实现 36312.3.1任务状态 36312.3.2任务控制块和就绪表 36412.3.3任务的创建与删除 36612.3.4任务等待和挂起 36712.3.5任务调度 36812.3.6信号量 36912.4内存管理的实现 37112.4.1内存寻址 37112.4.2伙伴系统算法 37312.4.3Cache与Slab分配器 37512.5中断与异常 37812.6Nanos的PCI总线驱动和8139网卡驱动 38012.6.1PCI总线驱动 38012.6.2设计通用PCI设备驱动接口 38312.6.3rtl8139网卡驱动程序的实现 38412.7操作系统的初始化 38612.7.1系统的引导 38612.7.2内存管理的初始化 38712.7.3其他部分的初始化 38812.8网卡的半轮询工作模式 38912.9网络地址转换:NAT 39112.9.1模块的定义 39112.9.2NAT模块 39212.9.3模块的实现 39312.10小结 406第13章嵌入式系统案例:基于Linux的家用网关 40713.1系统概述 40713.1.1硬件设计 40713.1.2软件设计 40813.1.3准备工作 40813.2搭建基本系统 40913.2.1编译工具链 41013.2.2内核的编译 41113.2.3BusyBox的编译和安装 41213.2.4系统的配置 41313.2.5内核的安装 41413.3创建网络连接 41513.3.1静态IP的设置 41613.3.2动态IP客户端 41713.3.3宽带拨号客户端PPP和PPPoE 41713.4安装和配置网络服务 41813.4.1telnetd服务 41813.4.2网页服务器 41913.4.3iptables的安装 42013.4.4NAT、端口映射和防火墙的实现 42013.4.5其他的网络服务 42213.5文件系统的压缩 422 -
Fedora Core3 Linux安装与系统管理李蔚泽编著本书以Linux Fedora Core 3为平台,是一本理论与实务并重的书籍。书中全面的介绍了Linux安装时的各种环境,将原本庞杂的系统管理,以20个章节来进行讨论,使读者完全掌握Linux的优势。屏弃了传统Linux书籍过分重视指令操作的陋习,全书介绍了许多简单又易上手的图形界面工具。熟读本书可帮助读者在最短时间内找到Linux的精髓所在,并能满足高级用户深入研究的要求。 -
嵌入式Linux系统开发详解李驹光, 郑耿, 江泽明编著《嵌入式Linux 系统开发详解:基于EP93XX系列ARM》全面介绍基于32位ARM架构嵌入式微处理器的软、硬件系统的高级应用开发,以Cirrus Logic的Ep93XX(ARM920T核)系列微处理器为基础,包含EP93XX的体系结构特点,片内资源,软硬件开发平台,嵌入式操作系统移值及应用程序开发等内容,着重强调基于EP93XX系统微处理器的硬件系统设计,嵌入式实时操作系统eCos在EP93XX系列微处理器上的移植及应用开发、嵌入式Linux操作系统及应用程序开始,设备驱动程序的开发等内容,最后以一个完整的系统开发说明嵌入式应用系统设计的一般流程。全书内容以应用为出发点,内容详尽,可作为ARM应用技术开发人员的参考用书,也可供高等院校相关专业的师生阅读使用。 -
Red Hat Linux Fedora 4大全鲍尔;郑鹏译本书是使用Linux自由发布版本Fedora的指南,内容全面、权威,并针对最新Fedora版本做了更新。本书第一部分介绍安装和配置;第二部分针对熟悉Linux的中级用户介绍FedoraCore的具体信息;第三部分针对了解网络集成的更高级用户介绍系统服务管理知识;第四部分介绍的编程和产品信息可进一步扩展Fedora系统的能力;第五部分附录提供了Internet上的相关资源列表,方便读者更深入地学习有关知识。本书针对中高级用户,但因本书系统而全面,所以稍有计算机知识的用户也能轻松学习本书。.本书全面介绍了FedoraCore的方方面面,FedoraCore是世界上流行的RedHatLinux的最新开放社团版本。.本书提供了安装,使用及管理FedoraCore的详细信息。读者可以从中学习如何建立自己的工作站,找到使用Fedora的桌面及产品软件的全面信息,包括带文字处理器。电子表格及图形的开源办公套件OpenOffice.org。本书还涵盖多个高级主题,包括XWindow系统、Linux编程、Web服务器管理、系统管理及网络管理。... -
Qt及Linux操作系统窗口设计倪继利编著《Linux内核分析及编程》一书作者倪继利新作!目前市场上唯一一本关于Qt的专业图书! 如何在Linux内核上建立窗口系统,这是嵌入式设备软件开发工程师必须了解的。Qt/Embedded是高端嵌入式设备PDA及手机的主流开发工具。作为一项成熟的技术,KDE桌面系统对于嵌入式窗口系统的设计有很大参考价值:Qtopia给嵌入式窗口系统提供了很好的框架。本书不仅阐述了KDE及X Window的机制,分析了Qt及Qt/Embedded开发工具的核心技术,而且还详细介绍了如何在嵌入式设备上建立Qtopia窗口系统。掌握了本书中所介绍的技能,读者可以在Linux内核上建立窗口系统,开发应用程序并能够在PC上模拟运行为嵌入式设备开发的应用程序。本书主要针对从事开发Linux应用程序的软件工程师,也很适合作为大学教材和参考书。 第1章“X Window”阐述了X的体系分层结构、显卡驱动程序、X协议,说明了建立在X上的各种编程方法,还分析了X客户端应用程序Xlib函数如何发出请求以及X服务器的工作原理及源代码。第2章“Qt编程核心技术”介绍了Qt对象模型、国际化方法、元对象及代码生成、进程问通信、窗口部件的基类、模板库和集合类、Qt线程、鼠标拖放、键盘焦点、会话管理,以及调试等方面的技术。第3章“KDE窗口系统”介绍了KDE的MIME类型处理、服务、KIO框架、组件框架和国际化等,还分析了KDE的启动过程及kicker应用程序。第4章“Qt/Embedded客户/服务器”讲述了将应用程序下载到嵌入式设备运行的方法,介绍了各种嵌入式GUI窗口系统,阐述了Qt/Embedded的客户/服务器模型工作过程。本章还分析了设备输入事件在客户与服务器之间的传递机制、应用程序窗口的显示原理,并说明了运行Qt/Embedded程序的方法。第5章“Qtopia核心技术”介绍了Qtopia开放源代码的核心技术及类库,其中着重分析了插件的装载过程、应用程序快速启动器的机制、类MimeType,以及编写输入法的方法等。第6章“Qtopia服务器”主要说明组成Qtopia服务器的各个类的功能,介绍了Qtopia服务器的启动过程,分析了Qtopia服务器如何启动应用程序及插件,还分析了电源监控、外观设置、应用程序安装与卸载以及AppServices等与系统管理相关的小应用程序。第7章“Qtopia的sysinfo应用程序分析”详细分析了sysinfo应用程序的源代码。第8章“Qtopia编译及系统集成”说明了Qtopia的定制与集成,阐述了,pro项日文件的语法...[更多内容] -
深入理解LINUX内核(意)博韦特,西塞提 著为了彻底理解是什么使得Linux能正常运行以及其为何能在各种不同的系统中运行良好,你需要深入研究内核最本质的部分。内核处理CPU与外界间的所有交互,并且决定哪些程序将以什么顺序共享处理器时间。它如此有效地管理有限的内存,以至成百上千的进程能高效地共享系统。它熟练地统筹数据传输,这样CPU不用为等待速度相对较慢的硬盘而消耗比正常耗时更长的时间。《深入理解Linux内核,第三版》指导你对内核中使用的最重要的数据结构、算法和程序设计诀窍进行一次遍历。通过对表面特性的探究,作者给那些想知道自己机器工作原理的人提供了颇有价值的见解。书中讨论了Intel特有的重要性质。相关的代码片段被逐行剖析。然而,本书涵盖的不仅仅是代码的功能,它解释了Linux以自己的方式工作的理论基础。本书新版涵盖2.6版本,其在内核的几乎每个子系统中都有重要的变化,尤其是在内存管理和块设备领域。本书侧重于以下主题:·内存管理,包括文件缓存、进程交换和直接内存存取(DMA)·虚拟文件系统层和第二、第三扩展文件系统·进程创建和调度·信号、中断和设备驱动程序的主要接口·定时·内核中的同步·进程间通信(IPC)·程序的执行《深入理解Linux内核》将使你了解Linux的所有内部工作,它不仅仅是一个理论上的练习。你将学习到哪些情况下Linux性能最佳,并且你将看到,在大量的不同环境里进行进程调度、文件存取和内存管理时,它如何满足提供良好的系统响应的需要。这本书将帮助你充分利用Linux系统。
