大家好,今天小编关注到一个比较有意思的话题,就是关于技术简说linux内核学习的问题,于是小编就整理了3个相关介绍技术简说Linux内核学习的解答,让我们一起看看吧。
为什么要学习Linux内核?
1 学习一些操作系统的理论知识,一些概念。比如:进程,内存管理,文件系统等等。
关于这一方面的书籍太多了,自己找一本就行了2 学习x86汇编,虽然linux用的是AT&T汇编,但二者只是格式不同而已。
而且学习x86汇编有助于了解x86系统结构。书籍推荐王爽的《汇编语言》 ,我学的时候用的不是这个,后面看到这本书,才觉得自己做了“苦功了”。
学完大部分汇编指令时,找些汇编程序读读,熟悉这些指令的用法。
不需要有写汇编程序的能力,能读就行了,当然会写更好3 赵炯的《Linux内核0.11完全注释》。
这个linux内核版本低,作者也讲得很详细。不过关于x86体系的那一部分,作者讲得很繁琐,这一部分一定要大体看懂,那后面章节的内容就没有多大的问题了。
我先把书通看了一遍,用了1个月的时间。
后来,再返回来一个一个研究,用了2个月。
之所以看这本书,是让自己对内核有个实质的感受,不仅仅只是理论上的东西。
4 毛德操的《linux内核情景分析》。linux内核版本2.4.0,这本书很厚,上下两册。
如何学习android上的linux kernel,从哪学起,怎么样循序渐进地看不同的部分?
不清楚楼主从事哪方面的工作,一般做Android系统剪裁或者驱动开发, 需要学习内核部分。
1. 研究一下linux内核 0.1版
此版是学习linux系统原理的经典,只有几百K。
***s://mapopa.blogspot***/2008/09/linux-0.html
通过此版的研究(虽然功能单一),你能对操作系统有进一步的理解。
2. 研究Android内核
从加电power on启动流程分析 入手,然后到init进程,然后到binder,匿名内存共享等学习。
一步一个脚印,做好笔记,提升肯定会很快。
▲这里本人推荐一本关于学习人工智能机器人存操作程序步骤的书籍,你可以循序渐进的学习。本书由工程师撰写,介绍机器学习中需要的主要数学知识,以及机器学习算法的实现和应用场景,为机器学习初学者制定了如何夯实基础的方案。本书以机器学习的算法为主线,深入剖析算法的概念和数学原理,以通俗形象的语言进行介绍,让读者无需了解太多前置数学知识,就能看懂数学公式的表达意思,从而深度掌握机器学习的思想和原理。主要内容包括:首先介绍机器学习基本概念及工具,然后从概念、原理、Python实现、应用场景几个方面,详细剖析机器学习中主要的算法,如线性回归算法、逻辑回归算法、KNN、木素贝叶斯、决策分类、支持向量机分类、K-means聚类、分类、集成学习等。
▲这是一本介绍机器学习的书,按常理来说,我应该首先介绍学习机器学习的重要性。可是,有必要吗?我记得约五年前,机器学习还是一个很有科幻色彩的术语,而[_a***_]技术学习圈几乎整版都换成了机器学习的各种模型,国内很多大学已经开始设立人工智能,机器学习当仁不让地成为核心课程。据说相关学者已经将该知识编制成课本,即将走入中学课堂。机器学习的火热,连带着让长年不温不火的Python语言也借机异军突起,甚至掀起一阵Python语言的学习热潮。机器学习已经成为“技术宅”的一种技能,因此,实在没必要再占篇幅介绍它的重要性。但是,学习机器学习的路途是坎坷和颠簸的,不缺的就是让你半途而废的借口。机器学习的成就是站在巨人的肩膀上取得的,因此,当你终于下定决*习机器学习时,很多人给你开出一串长长的学习清单:机器学习涉及大量向量和矩阵运算,所以线性代数是肯定要学的;机器学习的很多模型算法都以统计知识作为背。
Linux、Ubuntu怎样入门?
目前我也在学习linux,说说我的感悟吧。
在接触linux之前我学习的是单片机了解大概硬件的基本操作,同学说只是配置寄存器的话太low了去接触linux,学习linux时我是先接触命令的,当时学习的时候还是蛮有意思,就像传说中的黑客一样,说个题外的话当初看个电影叫什么“侏罗纪公园2“,那里面有个控制全局的电脑高手,我记得他好像输入ls这个命令就列出所有被龙破坏的地点,说来就有点觉得***。我学的命令是在网易上搜索“李明老师的课程”,这里不是打广告,这个课程不但是免费的,而且讲的非常详细,一节课大概接近1个小时甚至1h+,把基本原理都说的很清楚,这里做个配图:
当然这是以运维的方向来讲的,但是在linux的入门已经足够了,还有一点就是linux的版本有点低,不过不影响。里面还有服务器的配置以及shell脚本。
基本常用的命令用熟练后,可以进入下一步了,我学习的是嵌入式方向,所以我还得去学习计算机方面的知识,包括c++,c,数据结构,计算机网络,操作系统原理,汇编原理,这些知识在嵌入式方面是必学的,当我学完操作系统原理后,就对什么是线程,进程有了进一步的了解,华为再发布那个手机涡轮的强大功能就号称单线程胜多线程,到现在才理解是什么意思,哈哈这就是技术的魅力哈。
上面说的各个学科在工作方面的其实就是基础,进入工作后,若是做开发的,会进一步的接触到多线程,多进程的编程,以及网络编程,makefile等等。目前我处于学习课本的基础阶段,令我最深刻的感悟就是上面的基础不扎实,确实遇到很大的麻烦,每天都要回家看书。
若是学的差不多了,可以进一步的深入学习,那就是真的是没什么书可以看的了,想把技术学好就去看看linux内核的源代码地址就是***.kernel.org好像是这个地址,我没看过,听朋友说里面有很多很经典的结构,比如最基本的二叉树,平衡树都是常见的,最好还是把汇编学一学,了解操作系统的启动代码等等。
对于向大数据方面的研究,我不是做这一行的所以不清楚,但是是嵌入式的话,基本的路线就是这样,其实学到一定的境界了,可以去接触一下cpu是如何制作的相关的书籍,好像和vhdl语言有关系,这个时候就对芯片的架构有了整体的把握,进一步的解析操作系统的各个内核结构或许有更大的帮助,或许自己可以开发一个小的操作系统,有本书叫“30天自制操作系统”还可以,可以去学学。
到此,以上就是小编对于技术简说linux内核学习的问题就介绍到这了,希望介绍关于技术简说linux内核学习的3点解答对大家有用。
[免责声明]本文来源于网络,不代表本站立场,如转载内容涉及版权等问题,请联系邮箱:83115484@qq.com,我们会予以删除相关文章,保证您的权利。 转载请注明出处:http://www.rongung.com/post/32260.html