Linux学习路线

article/2025/10/8 19:32:34


关于 Linux

Linux 因其开源,免费,可裁剪,被应用到很多领域,尤其是嵌入式设备上。

Android 系统内核也是基于 Linux 的。

另外还有各种服务器和工作站也是用的 Linux。

什么是嵌入式设备?

手机、平板,路由器,机顶盒,MP3, 物联网智能产品等。



Linux 学习路线

这是我画的一幅图,大家可以按此路线循序渐进地学习。

不过需要说明的是,第五项驱动开发和第六项嵌入式系统开发是并列的,也就是说,学习完内核之后,你可以选择从事不同的领域,当然嵌入式开发有时会包含驱动开发。

还有就是嵌入式开发包括硬件,软件和系统开发,假如只做硬件的话,你没有必要按照上述路线进行,系统级开发的话,前面的是必备。


<img src="https://pic4.zhimg.com/v2-fda0fb4c18f1b15d5f4a49a05395037a_b.jpg" data-rawheight="889" data-rawwidth="1334" class="origin_image zh-lightbox-thumb" width="1334" data-original="https://pic4.zhimg.com/v2-fda0fb4c18f1b15d5f4a49a05395037a_r.jpg"&g

  1. 熟悉 Linux 系统,基本命令

    安装 Linux 系统,学会基本操作,熟悉文件系统,shell 脚本以及常用命令


  2. 了解程序开发过程

    搭建开发环境,了解 Linux 上程序开发过程。

    学会使用文本编辑工具 Vim,编译工具 gcc, as, 连接工具 ld, 调试工具 gdb, make 工具,会写 makefile。

    用 C 语言实现并编译自己的测试程序。


  3. 尝试系统编程

    试着在 Linux 上用 C 语言进行系统编程,

    其中需要调用 Linux 系统库函数 (API)。

    例如,实现一个需要进行网络通信、操作文件的多线程/进程程序。

    以此深入了解 Linux 系统运行机制。


  4. 学习内核

    上面学的差不多了,感兴趣的同学可以接着学习 Linux 内核。

    Linux 内核模块如下图

    <img src="https://pic3.zhimg.com/v2-d3ea61337758b865fa2b3bc365541b35_b.jpg" data-rawheight="392" data-rawwidth="526" class="origin_image zh-lightbox-thumb" width="526" data-original="https://pic3.zhimg.com/v2-d3ea61337758b865f

    这一部分内容比较深,能把它学透的基本就是大牛了,写个 OS 就不在话下了。


  5. 驱动开发

    从这里开始,就不是必须的了。

    有兴趣的朋友可以深入学习。

    但是学习驱动开发无疑要把前面的都要学好。


  6. 嵌入式系统开发

    学好 Linux 是嵌入式系统开发的基础。

    嵌入式开发包括很多方向,有硬件、软件,以及系统级别。

    硬件要学单片机,ARM、MIPS,DSP 等各种 MCU,Verilog, RTL, 具体就不多说了,跟 Linux 关系不太大。

    软件的话,需要了解交叉编译,以及嵌入式环境下 C 语言的特殊用法,例如 volatile、 位操作、寄存器操作、大小端、程序跳转等。

    系统级,要了解 Linux 内核裁剪、移植、编译、调试,还有 Bootloader 、设备驱动等


http://chatgpt.dhexx.cn/article/Es6P25mG.shtml

相关文章

为什么要学习 Linux ????

目前企业中大量的使用Linux作为服务器,在以后你们就业后,会发现web服务器Tomcat ,jobss这一类都是搭建在linux上面的,后面我们需要学习的数据库mysql , oracle ,db2, 或者greenplum这一类的,在企…

Linux 学习路线图

1.应用场景 更加高效地学习并达到运用Linux. 2.学习/操作 linux运维学习需要分为四个阶段:初级入门、中级进阶、高级提升、资深方向细化。 第一阶段:初级入门 初级阶段需要把linux学习路线搞清楚,任何学习都是循序渐进的,所以学…

从零入门机器学习之Linux系统详解

大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名,科大讯飞比赛第三名,CCF比赛第四名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的学生进入到算法…

为什么要学习Linux?

对于一些偶然接触到Linux的人来说,好奇是对于这个陌生名词的的第一印象。也许这个名字经常出现在你所使用的教科书上,或者是一些技术性的文章上,你却不知其意,此时这个名字再次出现,你就更是好奇了,Linux到…

Linux学习总结

课程:Linux操作系统与应用 参考书:Linux从入门到精通、unix环境高级编程 学习linux之前必须要做好心理准备: 第一,要明白学好linux不是一件一蹴而就的事,一定要能坚持使用它,特别是在使用初期&#xff0c…

你知道如何学习Linux吗?

说起Linux,业内人士或者经常玩电脑,对计算机比较精通的应该是比较熟悉的,Linux是一个开源的操作系统,由于其安全性高,完全免费,高效性,稳定等优点,越来越受大众的欢迎,就…

学习linux的感受

学习前要 1.安装虚拟机或者自己买个云服务器 下载centOs然后将镜像装入系统 2.装入之后在自己的电脑下载Xshell和Xbox 3在自己windows系统下运行cmd拼一下自己的虚拟机或服务器测试两个机子网络是否相通,如果相通即可用Xshell进行远程登陆 成果: 今天学了vim与vi&…

初学者如何系统性地学习Linux?

作为一个大一的同学,可以采取下面的步骤进行系统的学习Linux。 1、选择一个发行版:对于初学者,推荐使用Ubuntu或者Linux Mint。Ubuntu适合新手,使用广泛,社区活跃,遇到问题容易找到解决方案。虽然你觉得Ub…

如何学习Linux

热热热 一、Linux大致要学习那些内容 1、Linux下的基本操作命令 2、Linux的各种配置 环境变量、网络的配置、服务的配置----常规而重要 3、Linux下搭建各种开发环境 例如: Javaee、大数据、Python等 4、能够写一些基本的shell脚本,对Linux系统进…

QTP基本使用1

目录 一、功能自动化 1、测试过程 2、录制类型 二、QTP基本使用1 1、【录制】 2、【运行】 3、【例 -- 录制编写记事本】 4、【设置】 三、上午程序脚本 四、test -- project 的比较 五、QTP基本使用2 1、导出test文件 2、导入test文件 3、查看帮助文档 4、修改…

QTP 脚本语言编写入门到精通(一)

飞机订票登陆系统flight 一、编写用户登录测试用例。 二、直接编写脚本 ****************** SystemUtil.Run PathFinder.Locate("..\samples\flight\app\flight4a.exe"),"",PathFinder.Locate("..\samples\flight\app"),"open" Syst…

QTP工具简单操作使用说明

简介 QTP是QuickTest Professional 的简称,是一种自动化测试工具。使用QTP的目的是用它来执行重复的手动测试,主要用于回归测试和测试同一软件的新版本(版本迭代)。 启动QuickTest 第一次启动QuickTest时,打开“加载…

qt完整教程

各个组件的意思(功能介绍) Python Qt GUI设计:UI界面可视化组件、属性概述(基础篇—3)-腾讯云开发者社区-腾讯云 qt 如何设计好布局和漂亮的界面。_qt界面_花狗Fdog的博客-CSDN博客 样式表(美化关键)/*灰色*/ Q/*灰色*/ QWidget {background-color: rgb(255, 182, …

QT5教程推荐

学完《C Primer》该学什么?《Qt 5.9 C开发指南》是一个不错的选择。两本书结合是C岗位就业的保障。Qt的书籍很多,推荐这一本是因为更接近实战(工作内容)。理论和实际结合的很好。虽然Qt6.x已经问世,但学习Qt5.9并不过时…

qtp11安装及入门

一、简介 QTP是Quick Test Professional的简称,是一种自动测试工具。使用QTP的目的是想用它来执行重复的自动化测试,主要是用于回归测试和测试同一软件的新版本。因此你在测试前要考虑好如何对应用程序进行测试,例如要测试哪些功能、操作步骤…

QTP软件测试工具学习

一、定义 QTP:(QuickTest Professional),是一款用于功能测试的自动化测试工具,常用于Web网页测试和Windows窗体程序的测试,使用的脚本语言是VBScript,也可以直接录制生成测试脚本。在QTP8.0之后…

Qt教程(新手入门级)

前言 本人为大一学生,学校组织的实训要求使用Qt完成一些项目,所以在网上学了一些。在此总结一下我的学习经验。 版本:首先我使用的是Qt5.8.0的Qt Creator4.2.1。 起步 首先,如果你不是新手请跳过这一段。 打开Qt Creator&…

QT基本操作(简易教程)

QT 是一个跨平台的C图形用户界面应用程序框架。 这篇文章能教会你简单的使用QT。 1.初步了解 2.进一步了解 3.信号和槽 4.实现两个窗口的连接 1.初步了解: 创建项目: (Widgets是部件的意思)Widgets Application 部件应用程序…

Qt使用教程

1 项目背景 在完成最后一个项目的过程中,因为之前的定制版本是基于C#和WPF的,由于Qt的跨平台特性,而且相较于WPF简单易学,资料丰富,界面漂亮,尤其是能够独立安装和跨平台的特性,使得在项目开发…

QTP(Quick Test Professional)安装详细教程

下载链接: 一、QuickTest简介 QuickTest Professional简称QTP,是一种自动测试工具。 二、QuickTest安装 下载链接:链接:https://pan.baidu.com/s/1B11ZL_MsBXBCI4k6igJmXg 提取码:jwvo 本次实验版本为QTP10。 按默认…