本文作者:ptiyny

树莓派linux内核学习 从树莓派开始玩转linux

ptiyny 07-28 16
树莓派linux内核学习 从树莓派开始玩转linux摘要: 大家好,今天小编关注到一个比较有意思的话题,就是关于树莓派linux内核学习的问题,于是小编就整理了4个相关介绍树莓派linux内核学习的解答,让我们一起看看吧。如何在单片机装Li...

大家好,今天小关注到一个比较有意思的话题,就是关于树莓派linux内核学习的问题,于是小编就整了4个相关介绍树莓派Linux内核学习的解答,让我们一起看看吧。

树莓派linux内核学习 从树莓派开始玩转linux
(图片来源网络,侵删)

如何在单片机装Linux系统?

按道理来说有这几年经验,应该已经熟悉了几款单片机,像stm系列或者ti的,这样应该对soc的体系结构比较了解,一般单片机是在Windows下开发,熟悉一些总线,熟悉一系列业务算法,可以以此为基础。

1.首先需要补充os方面的知识,现代操作系统,看一看,线,进程,内存管理,文件系统,网络。

2.开发系统逐步使用Ubuntu或者他linux发行版,熟悉linux的基本操作,脚本,交叉编译

3.看深入理解linux内核,lld第三版,熟悉驱动和内核的基本知识,可以重点看自己熟悉外设的驱动,如spi。

树莓派linux内核学习 从树莓派开始玩转linux
(图片来源网络,侵删)

4.可以在熟悉的单片机上移植一个os,不一定是linux,如果是stm32可以移植freertos,这个网上很多资料,然后结合资源可以移植linux。

5.可以买一个树莓派,移植linux也是很方便的,可自己添加驱动,写应用,linux环境高级编程,也可以看看。

这样就你就会理解了,也不会陷入一个os。

当然最简单有效的方式是直接找一份linux相关的工作,在工作中学习,这又是鸡和蛋的问题。

树莓派linux内核学习 从树莓派开始玩转linux
(图片来源网络,侵删)

世界前十的开源操作系统?

1. SVDFeature

2. LibMF

3. Libfm

4. LensKit

5. GraphLab

6. Mahout

7. Myrrix

8. EasyREC

9. Waffles

10. RapidMine

何学习嵌入式linux?

stm32确实是一个瓶颈。而且现在毕业的相关专业的学生越来越多,stm32的技术门槛和知识点确实相对容易掌握。那么在主流的电子行业对嵌入式的需求是比较大的。主要是在于Linux的广泛运行。哪怕是安卓系统也是可以运行在Linux相同的电路开发板上的。

开发板的话就不好推荐了,有点像广告了。

学习Linux分为两个大方向,底层驱动和上层运用,这也是操作系统的特点。底层涉及驱动系列,对于硬件有比较直接的相关性。而应用几乎和硬件没他大的关系,主要掌握的是如何使用Linux操作系统,涉及各种指令,可以看 很多Linux运用的书籍。进而写一些基于Linux GCC程序来熟悉这个。可以玩一玩树莓派板子,这个资料比较多,可玩性,掌握知识是很有帮助的。最近出了新版的,可以备一个用来学习Linux。

而底层是比较枯燥的,需要投入比较多。主要是驱动层比较难,所以需求很多,不愁找不到工作。仅仅会单片机已经确实不太有很大的竞争力了。底层需要掌握很多知识,随便去买一个比较流行的开发板就行了,主要是资料多,不懂的好找到人来问。否则自己一个人遇到卡壳的就很慢了。可以看看原子的,stm32你应该知道他很出名,打算出Linux开发板了。

我目前只会各类单片机及电路板的设计,当然也自学了服务器后端的简单使用,以及网站前端开发Android app开发,IOS还没怎么学,时间不那么丰富。你趁着毕业前三年的业余时间,学习一下是很不错的,时间相对多一点,但是也需要靠自觉性,毕竟你的同事可能都在打游戏,你能坚持走下去吗?

技术工作是非常枯燥的,希望你能有找到自己的方向,多积累,多思考。

嵌入式Linux其实范围很广,只以我个人经验简单说说。

我们简单的把嵌入式Linux开发工作分几类:

bootloader层开发

驱动层开发

根文件系统搭建

应用程序开

其中:

Bootloader层开发和Linux关系不太大,一般用汇编语+C语言,更类似单片机开发

Alpine Linux 3.11带来了哪些更新?

开发者Natanael Copa今天正式推出了Alpine Linux 3.11.0重大版本更新,在修复BUG、更新组件和进行安全升级的同时引入了大量新功能。新版本基于新的Linux Kernel 5.4内核,添加了对树莓派4 Model B单板计算机的支持,可以使用AArch64 (ARM 64-bit)和ARMv7架构镜像进行安装。

Alpine Linux 3.11.0还初步支持了GNOME和KDE Plasma桌面环境,用户可以从各大软件储存库中进行安装,支持下一代Vulkan图形API,以及为Direct3D 9/10/11提供基于DXVK Vulkan的翻译层。

Alpine Linux 3.11.0还对诸多组件进行了更新,包括Busybox 1.31.1,Crystal 0.31.1,Erlang 22.1,GCC 9.2.0,Git 2.24.1,Go 1.13.4,LLVM 9.0.0,musl libc 1.1.24 ,Nextcloud 17.0.2,Perl 5.30.1,PostgreSQL 12.1,Python 3.8.0,QEMU 4.2.0,Rust 1.39.0,Zabbix 4.4.3和Xen 4.13.0。

在后台性能方面删除了linux-vanilla,官方推荐在从此前版本升级的时候安装 linux-lts,并弃用了对Python 2软件包的支持,该软件包将在下一版本中完全删除。此外,软件包现在使用/var/mail替代/var/spool/mail,而且clamav-libunrar不再是Clamav的硬依赖性。

适用的平台包括64-bit (x86_64), 32-bit (x86), s390x (IBM System z), ppc64le (PowerPC 64-bit Little Endian), ARMhf, AArch64 (ARM64)和ARMv7,用户可以通过官网进行下载。

访问:

到此,以上就是小编对于树莓派linux内核学习的问题就介绍到这了,希望介绍关于树莓派linux内核学习的4点解答对大家有用。

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

阅读
分享