尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

学习嵌入式的第一天

学习嵌入式的第一天 加油成为一名出色的嵌入式工程师。一、什么是嵌入式今天之前通过我以前对嵌入式的接触与认识对嵌入式的认识就是通过Linux操作系统来驱动一些硬件。也就是用一句话介绍嵌入式所说“用软件驱动硬件”。在今天的学习我知道了IEEE对嵌入式的定义——IEEE: “Device used to control, monitor, or assist the operation of equipment,machinery or plants”.总的来说嵌入式系统是以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。应用也就是我要开发这个的目的主要是为了来完成什么任务而计算机技术又分为硬件和软件。硬件部分又CPU、存储器、控制器、输入设备、输出设备。软件主要是嵌入式操作系统。相比于通用计算机嵌入式更像是为了某项任务而量身定做。嵌入式系统是将先进的计算机技术、半导体技术和电子技术与各个行业的具体应用相结合后的产物。包含有计算机但又不是通用计算机的计算机应用系统。二、Linux系统怎么来的1、操作系统发展简史1946 年诞生第一台计算机 ENIAC。1969 年开发出UNIX操作系统最初用 B 语言编写之后 C 语言被创造出来并用 C 语言重写 UNIX。早期 UNIX v6 是闭源的。开源理念兴起GNU 组织口号GNU is not UNIX!开源开发了很多工具例如gcc编译器、EMACS 编辑器但缺少操作系统内核。Minix小型类 Unix 系统。林纳斯Linus参考 Minix开发出Linux 内核采用开源协作开发模式。完整的操作系统 GNU 工具软件 Linux 内核常叫 GNU/Linux。 Android、鸿蒙底层都使用 Linux 内核。2、闭源系统 vs 开源系统Windows / Mac OS闭源需要收费源代码不公开。Linux开源免费使用需要遵守开源协议。3、Ubuntu 和 Linux 内核的核心关系重点Linux仅仅指Linux 内核是操作系统最核心部分负责管理硬件、进程、内存。Ubuntu乌班图属于Linux 发行版。公式Linux 内核 GNU 工具 桌面图形系统 各类应用软件 Ubuntu 操作系统iso 镜像简单一句话Linux 内核是 Ubuntu 的心脏Ubuntu 是打包好、可以直接安装使用的一套完整操作系统。4、其他常见 Linux 发行版RedHat、CentOS、Kali偏向网络安全运维5、Ubuntu 版本规则每年发布 2 个版本4 月、10 月每 2 年推出LTS 长期稳定支持版三、Linux入门学习总结1.Linux 基础概念1. 命令的基本格式。Linux 命令遵循统一格式命令 [选项] [参数]命令、选项、参数之间至少有一个空格。例如ls -a /中ls 是命令-a 是选项/ 是参数。2. 目录与文件系统。Linux 中“目录”就是 Windows 下的“文件夹”。两者的硬盘管理方式不同Windows 每个盘符C 盘、D 盘…各是一棵树而 Linux 整个系统只有一棵“倒着的树”所有路径都挂在根目录/下面。路径中第一个/表示所有路径的起点根目录后续的/都只是目录分隔符。例如/home/linux表示“根目录下的 home 目录下的 linux 目录”也就是当前用户 linux 的主目录家目录。3. 用户主目录与~。~代表用户主目录对当前用户 linux 来说就是/home/linux直接输入cd默认效果就是“回家”回到主目录。4. 存储单位换算。1 Byte 8 个二进制位bit1024 Byte 1 KB1024 KB 1 MB1024 MB 1 GB1024 GB 1 TB。电脑硬盘常用 TB 计量内存常用 GB 计量。5. 用户权限与 sudo。普通用户只在自己家目录下拥有最大权限一旦出了家目录进行创建、修改等操作就需要超级用户权限可用sudo临时切换为超级用户有时效。6. 虚拟机使用建议。虚拟机不用时建议“挂起”而不是关机下次使用时可以直接恢复。2.常用命令本节课共学习 9 个常用命令。表1 常用命令速查表命令功能常用形式与示例pwd打印当前工作目录pwd→ 显示 /home/linuxls查看指定目录下的内容ls /看根目录ls看当前目录ls -a含隐藏文件名字以 . 开头ls -l详细信息ls -lh大小换算为 KB/MB/GBcd切换目录cd 目录名cd ~或直接cd回主目录cd .当前目录cd ..上一级cd -上一次操作的目录touch创建空白文件touch 123.txt当前目录touch /home/linux/123.txt指定路径mkdir创建目录mkdir abc在当前位置创建目录 abccp复制文件/目录cp 源文件 目标文件目标可写成目录名复制到该目录或“目录名/文件名”复制目录需加-r递归mv移动/重命名mv 源 目标移动后源文件不存在对比 cp常用来重命名rm删除rm 1.txt删普通文件rm 123dir -r删目录需加 -rcat查看文件内容cat 文件名用ls -l查看详细信息时输出从左到右依次为文件类型权限、硬链接数、所有者名字、所属组、文件大小字节、文件最后被修改的时间、文件名。以-rw-rw-r-- 1 linux linux 0 9月14 14:07 123.txt为例表2 ls -l 输出字段解读字段含义示例值-rw-rw-r--文件类型权限第一个字符 - 表示普通文件后 9 位是权限1硬链接数1linux所有者名字linuxlinux所属组linux0文件大小字节0 字节9月14 14:07文件最后被修改的时间9月14 14:07123.txt文件名123.txt路径分为两种相对路径形式上看不以/开头以当前位置为参考起点绝对路径以/开头以根目录为参考起点。例如touch 123.txt用的是相对路径创建在当前目录而touch /123.txt用的是绝对路径创建在根目录下。3.vi/vim 编辑器vi/vim 是 Linux 下类似 Windows 记事本的文本编辑工具功能更强大。它有三种模式命令模式打开文件后默认进入此模式下不能编辑文字、插入模式可编辑文字、底行模式执行保存、退出等命令。图2 vi/vim 三种模式转换示意图基本操作流程vi 文件名进入 vi命令模式→ 按i进入插入模式 → 编辑文字 → 按ESC回到命令模式 → 按shift:进入底行模式 → 输入命令回车。底行模式常用命令w保存、q退出、wq保存并退出、wq!强制保存退出、q!强制退出不保存其中!表示强制操作。复制与剪切均在命令模式下yy复制光标所在行配合p粘贴myy复制从光标开始的 m 行np粘贴 n 份。dd剪切删除光标所在行配合p粘贴mdd剪切 m 行np粘贴 n 份。删除dd删除一行ndd删除 n 行gg来到第 1 行Gshiftg来到最后一行ggdG删除全部内容。选中操作按shiftv进入行选中按一下y复制、按一下d删除配合p粘贴按ctrlv进入块选中同样用 y/d/p 操作。撤销与反撤销u撤销上一步操作ctrlr反撤销。4.Linux 下 C 语言编程流程Windows 下常用 dev C 这类 IDE集成开发环境完成写代码、编译、运行、调试Linux 下则用四个独立工具分步完成1. 编辑代码vi/vim。例如vi hello.c打开或新建源文件进行编辑。2. 编译代码gccGNU 的 C 语言编译器。例如gcc hello.c生成的可执行文件默认叫a.out。3. 运行代码./a.out。./表示当前目录即运行当前目录下的可执行文件 a.out。4. 调试代码gdb调试工具。总结本次课程我系统学习了嵌入式行业认知、Linux发展史、基础命令操作及Linux下C语言开发相关知识收获颇丰也对嵌入式行业有了全新、清晰的认知。当下AI快速迭代多数行业初级岗位竞争激烈甚至被替代而嵌入式作为软硬件结合、用软件控制硬件的核心技术方向应用场景广泛涵盖扫地机器人、人形机器人、物理AI等领域就业稳定性更高。嵌入式系统是以应用为中心、计算机技术为基础软硬件可裁剪对功耗、体积、成本、可靠性有严格要求的专用系统。同时我明确了嵌入式完整学习路线也确立了自主实操、合理借助AI辅助学习的学习理念。课程中我了解了Linux的发展历程区别于闭源收费的WindowsLinux开源免费、适配性极强安卓、鸿蒙系统底层均基于Linux内核。Ubuntu是主流Linux发行版依靠VMware虚拟机即可搭建开发环境满足嵌入式开发需求。实操方面我熟练掌握了Linux基础命令熟悉pwd、ls、cd、touch、mkdir、cp、mv、rm等常用指令分清了绝对路径与相对路径的区别掌握sudo临时提权的使用场景。同时掌握了vi/vim编辑器的三种工作模式熟练运用复制、剪切、粘贴、撤销等操作了解了保存退出等基础底行命令。最后我掌握了Linux环境下C语言开发流程即vim写代码、gcc编译、终端运行、gdb调试。本次学习夯实了嵌入式入门基础后续我会多加实操练习巩固命令操作与开发技巧稳步推进后续嵌入式深度学习。
返回列表