大家好,今天小编关注到一个比较有意思的话题,就是关于学习linux内核的书籍的问题,于是小编就整理了3个相关介绍学习Linux内核的书籍的解答,让我们一起看看吧。
求C语言初学者书籍推荐?
先看《C Primer Plus中文版》(如果你英语好,可以看英文版《C Primer Plus 》)推荐从经典入手。推荐的话,这本书上的习题是有答案的,可以练练。
如果着急的话可以看谭浩强的《C语言程序设计》,看完基本小程序会写,算入门了。
进阶的书去看《The C Programming Language》,俗称C语言圣经。
再进一步就是多写代码的经验和根据需要学习相应的C语言(比如Object—C,写apple App用的)
至于你选的其他的书都可以先不看,其中《21天学通c(第三版)》《C语言编程宝典》《你必须知道的495个C语言问题 》基本是用来诓骗新手的商业书,噱头比较重,有用的不多,重复性很高。
《C和指针》《C陷阱与缺陷》是比较好的书,但是有点高阶了,如果不是研究C语言的话基本上用不到,除非是公司里的C语言工程师才看。
《C语言程序设计》(第2版)
《程序员修炼之道》
《C和指针》
《C primer plus》(入门首选)
《高质量程序设计指南》(一定要看)
《从问题到程序》(最佳高校教材)
2.内核/驱动
自学Java有什么书比较好?
《阿里巴巴JAVA开发手册(正式版)》(V1.2.0版)更新(V1.2.0版)《阿里巴巴J***a开发手册(正式版)》 - 知乎专栏
这篇最新版本不只是规范汇聚了阿里,更有广大知乎程序猿、工程师、研发网友的智慧结晶。
有关书籍方面推荐一篇博文:
更偏爱那些能用简短流畅的话,把少壮不努力的程序员所需的基础补回来的薄书,而有些教课书可能很著名,但干涩枯燥,喋喋不休的把你带回到大学课堂上昏昏欲睡,不录。
操作系统与网络的书
《Linux内核设计与实现 第3版》Robert Love用最薄的篇幅,顺畅的文字将Linux内核主要的算法讲清楚了,《深入理解Linux内核》,《深入Linux内核架构》之类厚厚的全是代码,不是专门的内核程序员看这本足够了。
《Linux系统编程 第2版》继续是Robert Love,比起APUE也是以薄见长,专门针对重要的系统调用讲解。
《性能之巅》操作系统的性能调优、监控、工具和方***,看这本就够了,已经足够厚,可能是书单里最厚的一本。
Linux的内核及其作用?
管理进程:内核负责创建和销毁进程, 并处理它们与外部世界的联系(输入和输出),不同进程间通讯(通过信号,管道,或者进程间通讯原语)对整个系统功能来说是基本的,也由内核处理。 另外, 调度器, 控制进程如何共享CPU,是进程管理的一部分。 更通常地,内核的进程管理活动实现了多个进程在一个单个或者几个CPU 之上的抽象。
管理内存:计算机的内存是主要的***, 处理它所用的策略对系统性能是至关重要的。 内核为所有进程的每一个都在有限的可用***上建立了一个虚拟地址空间。 内核的不同部分与内存管理子系统通过一套函数调用交互,从简单的malloc/free对到更多更复杂的功能。
文件系统:Unix 在很大程度上基于文件系统的概念;几乎Unix中的任何东西都可看作一个文件。 内核在非结构化的硬件之上建立了一个[_a***_]化的文件系统,结果是文件的抽象非常多地在整个系统中应用。 另外,Linux 支持多个文件系统类型,就是说,物理介质上不同的数据组织方式。 例如,磁盘可被格式化成标准Linux的ext3文件系统,普遍使用的FAT文件系统,或者其他几个文件系统。
设备控制:几乎每个系统操作终都映射到一个物理设备上,除了处理器,内存和非常少的别的实体之外,全部中的任何设备控制操作都由特定于要寻址的设备相关的代码来进行。 这些代码称为设备驱动。 内核中必须嵌入系统中出现的每个外设的驱动,从硬盘驱动到键盘和磁带驱动器。 内核功能的这个方面是本书中的我们主要感兴趣的地方。
网络管理:网络必须由操作系统来管理,因为大部分网络操作不是特定于某一个进程: 进入系统的报文是异步***。 报文在某一个进程接手之前必须被收集,识别,分发,系统负责在程序和网络接口之间递送数据报文,它必须根据程序的网络活动来控制程序的执行。 另外,所有的路由和地址解析问题都在内核中实现。
到此,以上就是小编对于学习linux内核的书籍的问题就介绍到这了,希望介绍关于学习linux内核的书籍的3点解答对大家有用。