嵌入式Linux开发的前世与今生——基本概述(1),Linux运维面试吃透这一篇就没有拿不到的offer-程序员宅基地

技术标签: 2024年程序员学习  面试  运维  linux  

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上运维知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024b (备注运维)
img

正文

四,嵌入式系统特点

五,嵌入式处理器

1,分类

2,嵌入式微处理器

3,微控制器

4,DSP(digital signal processor

5,SOC

六,嵌入式Linux操作系统

1,概念

2. Linux的主要特点

4,设备驱动

5,Arch-体系结构

6,MMU:内存管理单元

7,VFS-虚拟文件系统

8,基本概念

七, Linux内核目录结构

八,嵌入式系统

1,嵌入式Linux操作系统的优势

2,嵌入式系统开发流程

3,生成代码阶段

4,交叉编译与链接

九,软件获取


一,嵌入式系统

===========

嵌入式系统是为满足某些特定功能需要而内嵌在设备、装置、机器内部的一种专用的计算机系统

三大件:处理器,存储器,IO+外设

USB:UNIVERASL SERIAL BUS通用串行总线。

以华为华为NB-IoT智能停车方案为例

二,嵌入式系统开发在物联网开发中的作用

========================

应用层:JAVA、C/C++;HTTP、HTTPS、MQTT、Coap、异步IO、内存数据库、大数据、云计算

网络层: LoRA、NB-IOT、5G公众移动通信网(第三层硬件);TCP/IP

**边缘层:**边缘计算(雾计算)

**感知层:**MCU(微控制器)+(EOS)embeded operation system+海量传感器+通信模块(LoRA、NB-IOT、5G)+电源管理芯片(电池供电、低功耗)+在线升级OTA+信号采集、处理、控制软(嵌入式软件)

三,嵌入式系统组成结构

===============

1,硬件和软件


(1)**硬件:**嵌入式处理器、存储系统、(由IO连接)外设、时钟、复位、电源

三大件全部集成:嵌入式微控制器(单片机);

三大件部分集成:嵌入式微处理器+IO集成在一个芯片内部,存储外置

(2)**软件:**嵌入式操作系统(可裁剪移植的、定制开发)、应用软件(专用性、固化)

嵌入式系统通常由嵌入式处理器、外围设备、嵌入式操作系统和应用软件等几大部分组成。

2,硬件层


硬件层由嵌入式处理器、存储器系统、通用设备接口和I/O接口(如A/D、D/A、I/O等)组成。在一片嵌入式微处理器基础上增加电源电路、时钟电路和存储器电路(ROM和SDRAM等),就构成了七个嵌入式核心控制模块。其中,操作系统和应用程序都可以固化在ROM中。

3,中间层


中间层也称为硬件抽象层或板极支持包,它把系统软件与底层硬件部分隔离。板极支持包对上具有操作系统相关性,对下具有硬件相关性。设计一个完整的中间层需要完成两部分工作:  ① 嵌入式系统的初始化,它包括片级初始化、板级初始化和系统级初始化。  ② 设计硬件相关的设备驱动

4,软件层


软件层由多任务操作系统(OS)、文件系统、图形用户接口(GUI)、网络系统及通用组件模块组成。OS是嵌入式应用软件的基础和开发平台;是一段嵌入式目标代码中的程序,系统复位后首先执行,相当于用户的主程序,用户的其他应用程序都建立在OS之上;是一个标准的内核,它将CPU时钟、中断、I/O、定时器等资源都封装起来,留给用户的是一个标准的API函数接口。

5, 功能层与执行装置


功能层由基于OS开发的应用程序组成,用来完成对被控对象的控制功能。功能层是面向被控制对象和用户的,为方便用户操作,往往需要提供一个友好的人机界面。执行装置是指那些可以接受嵌入式计算机系统发出控制命令,执行所规定的操作或任务的设备和装置。在不同应用领域中,嵌入式系统的执行装置一般是不同的,应该根据具体的应用场合和系统所要求实现的功能选择不同的设备和执行装置。

四,嵌入式系统特点

=============

①专用、软硬件可剪裁可配置

②低功耗、高可靠性、高稳定性

③软件代码短小精悍

④代码可固化

⑤实时性

⑥软件开发需要专门的开发工具和开发环境

五,嵌入式处理器

============

1,分类


嵌入式微处理器(Embedded Microprocessor Unit, EMPU)  高主频(高性能)、低功耗(UI)、集成处理器+IO ;ARM体系结构

微控制器(Microcontroller Unit, MCU)

DSP处理器(Digital Signal Processor, DSP)

FPGA(现场可编程门阵列) 大规模集成电路

片上系统(System On Chip,SOC)

7nm,5nm

2,嵌入式微处理器


来源于通用处理器;

更高的集成度:CPU+外设控制器;

更低的功耗:低电压供电,部分外设可通过程序关闭;

完备的电源管理方案;

大多基于RISC结构,满足高性能计算需求;RISC:Instruction sets computer;指令条数少、指令简单

部分采用多核及big.little架构;

超低线宽;高集成度、低功耗

去除冗余外设、满足应用需要即可;

面向工业应用的高可靠性;

内置MMU(内存管理单元),支持实时多任务操作系统;

内置安全区,满足联网应用的安全需求;

3,微控制器


即单片机;

性能逐渐提升:8位  16位  32位

高集成度:CPU+外设控制器+片内存储(RAM、ROM);

更低的功耗:超低功耗模式;

去除冗余外设、满足应用需要即可;

面向工业应用的高可靠性;

部分支持操作系统;

内置安全区,确保基于互联网应用的安全性。

4,DSP(digital signal processor


DSP处理器是专门用于信号处理方面的处理器,其在系统结构和指令算法方面进行了特殊设计,在数字滤波、FFT、谱分析等各种仪器上DSP获得了大规模的应用;

通信信号处理、多媒体处理领域使用广泛;

DSP处理器比较有代表性的产品是TI公司的TMS320系列、ADI公司的ADSP21XX系列和Motorola公司的DSP56000系列。

5,SOC


SoC就是System on Chip,SoC是一种基于IP(Intellectual Property)核嵌入式系统设计技术;

ARM+DSP、ARM+FPGA等架构;

当前主流DSP、FPGA均采用这种架构;

嵌入式片上系统设计的关键是IP核的设计。IP核分为硬核、软核和固核,是嵌入式技术的重要支持技术;

六,嵌入式Linux操作系统

==================

1,概念


Linux 最初是专门为基于 Intel 处理器的个人计算机而设计的。 Linux 的前身是指由 Linus Torvald 维护开发的开放源代码的类 Unix 操作系统的内核。

2. Linux的主要特点


① 开源:

② 多用户:

③ 多任务:

④ 良好的用户界面:

⑤ 设备独立性:

⑥ 丰富的网络功能:

⑦ 可靠的安全系统:

⑧ 良好的可移植性;

3.  Linux 的组成

最后的话

最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!

资料预览

给大家整理的视频资料:

给大家整理的电子书资料:

如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注运维)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
最后的话

最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!

资料预览

给大家整理的视频资料:

[外链图片转存中…(img-jei0Z7Jq-1713241902404)]

给大家整理的电子书资料:

[外链图片转存中…(img-jDI9VjIt-1713241902405)]

如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注运维)
[外链图片转存中…(img-lkEEEtlo-1713241902405)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/code8889/article/details/137820330

智能推荐

计算机基础知识判断题答案,计算机基础知识试题及答案判断题模板.docx-程序员宅基地

文章浏览阅读1.5k次。优质文档PAGE 页码页码/NUMPAGES 总页数总页数计算机基础知识试题及答案判断题(一)1、 冯?诺依曼原理是计算机的唯一工作原理。.( × )2、 计算机能直接识别汇编语言程序。.( × )3、 计算机能直接执行高级语言源程序。.( × )4、 计算机掉电后,ROM中的信息会丢失。( × )5、 计算机掉电后,外存中的信息会丢失。( √ )6、 应用软件的作用是扩大计算机的存储容量。( ×..._计算机判断题及答案

最新全流程GMS地下水数值模拟及溶质(包含反应性溶质)运移模拟技术深度应用-程序员宅基地

文章浏览阅读704次,点赞30次,收藏18次。最新全流程GMS地下水数值模拟及溶质(包含反应性溶质)运移模拟技术深度应用_gms地下水数值模拟

Android 自定义横向进度条_android自定义横向进度条-程序员宅基地

文章浏览阅读2.4k次。private int max; private double progress; private int bgColor; private int progressColor; private int padding; private boolean openGradient; private int gradientFrom; private int gradientTo; private boolean showSecondProgres_android自定义横向进度条

宝塔打开后,内容渲染失败(405)【了解一下】_宝塔部署后405 not allowed-程序员宅基地

文章浏览阅读111次。如果你是以上这种情况,打开以后发现,数据渲染不上,很可能是因为你的配置反向代理的顺序搞错了,造成的结果就是反向代理没有替换成功!还是那些内容,只是改变了操作步骤;数据就能加载出来了!_宝塔部署后405 not allowed

联想计算机管理员权限设置,Windows XP系统如何新建administrator管理员权限账户-程序员宅基地

文章浏览阅读1.6k次。知识点分析:对于Windows XP系统,有很多种创建用户账户的操作方法。其中包括:使用CMD命令行的net命令进行,也可以使用控制面板的图形界面进行,还可以使用计算机管理控制台中的“本地用户和组”进行。其中后者自定义功能多,本文以此为例进行操作示范。操作步骤:1. 在系统桌面找到并使用鼠标右键点击“我的电脑”图标,然后在弹出菜单中选择“管理(G)”,如下图所示:2. 在弹出的计算机管理窗口,展开..._xp 开启管理员账户

socket 及 websocket的握手过程_websocket三次握手详解-程序员宅基地

文章浏览阅读6k次。一、WebSocket和HTTP之间的关系WebSocket和HTTP一样都是基于TCP的应用层协议。WebSocket协议和HTTP协议是两种不同的东西。客户端开始建立WebSocket连接时要发送一个header标记了 Upgrade的HTTP请求,表示请求协议升级。所以服务器端做出响应的简便方法是,直接在现有的HTTP服务器软件和现有的端口上实现WebSocket协议,然后再回一个状态..._websocket三次握手详解

随便推点

C#版的抓包软件_c# winpcap-程序员宅基地

文章浏览阅读5.4k次,点赞3次,收藏27次。NetAnalyzer实现结构在上一篇中介绍一点VC++开发环境的配置,与基本的运行方式。因为NetAnalyzer使用的C#作为开发语言,所以在此主要介绍一些在C#环境下的开发环境的配置,与一些基本开发情况,力求在完成本篇后后,读者可以制作一个简单的抓包程序。在开始编程前先要介绍连个.Net类库SharpPcap.dll与PacketDotNet.dll。在2004年Tamir _c# winpcap

Unity中批量修改图片导入设置及修改图集的设置_unity立绘整合怎么修改-程序员宅基地

文章浏览阅读4.3k次,点赞2次,收藏5次。Unity中批量设置图片导入设置,编辑器扩展_unity立绘整合怎么修改

【CC2650】——电池电量报文显示_csdn电源耗电量报文-程序员宅基地

文章浏览阅读660次。CC2650 电量 百分比 广播_csdn电源耗电量报文

pyqt5菜鸟教程_PyQt5教程(一)——第一个PyQt5程序-程序员宅基地

文章浏览阅读7.4w次,点赞15次,收藏78次。在这部分教程中我们将学习PyQt5的一些基本功能一个简单的例子这是一个只显示一个小窗口的简单示例。但我们可以对这个窗口进行一些操作,如调整尺寸,最大化或最小化。这需要编写很多代码,但有人已经完成了这个功能。因为它在多种程序中的通用性,所以不再需要重复编码。PyQt5是一个高级工具集。如果我们使用较低级的工具集进行编码,要实现这个功能最少也要上百行代码。#!/usr/bin/python3# -*-..._pyqt5菜鸟教程

acwing.188.逆序对数量_acwing 逆序对的数量-程序员宅基地

文章浏览阅读93次。逆序对数量(归并排序应用)给定一个长度为 n 的整数数列,请你计算数列中的逆序对的数量。逆序对的定义如下:对于数列的第 i 个和第 j 个元素,如果满足 i<j 且 a[i]>a[j],则其为一个逆序对;否则不是。输入格式第一行包含整数 n,表示数列的长度。第二行包含 n 个整数,表示整个数列。输出格式输出一个整数,表示逆序对的个数。数据范围1≤n≤100000输入样例:62 3 4 5 6 1输出样例:5#include<iostream>using_acwing 逆序对的数量

Spark学习笔记_sparksession.read()-程序员宅基地

文章浏览阅读684次。一、安装1、上传并解压。2、修改spark/conf/spark_env.sh:export JAVA_HOME=/usr/jdk1.8.0_152/export SPARK_MASTER_IP=hadoop1 expart SPARK_MASTER_PORT=7077 export HADOOP_CONF_DIR=/usr/ha..._sparksession.read()