当初次接触嵌入式时,我在虚拟机上安装了一个CentOS 6.8的操作系统,然后看《鸟哥的Linux私房菜》基础篇一步一步地练习敲命令。当然,也开始用vim练习C语言。其实也没有什么特别的提升捷径,那时就是了解->练习->熟练->闭着眼睛都会。
如果一定要说有什么快速提升的方法,就是不要偷懒,俗话说“药不能停”就是这个道理,如果在学习的中途放下了一段时间,那么下次再敲的时候肯定会生疏,然后又得从头想想练练。
接下来还是说说入门嵌入式最好的打开方式之一,希望对大家有帮助。
- 操作系统的安装
- 基本指令的熟练
- Linux+C的不断练习
- 如果有计算机原理方面的基础是最好不过的(不过在后期也可以逐渐学习并提升)
关于前三点,一定要练熟,把基础打牢,否则,想在以后做项目的时候以为可以亡羊补牢,是很心累的事,也不会利于深入研究如内核或者底层驱动框架之类的知识。
一、操作系统的安装
(希望你是会安装Windows系统的,虽然与安装Linux有天壤之别)了解了解磁盘、分区、启动项、引导程序,细一点可以区分ext4、ext3、swap、vfat等的文件系统类型有什么区别。如果以上的概念你都明白了,那么安装Linux系统肯定没有太大问题。详细的可以看看鸟哥基础篇开始的介绍,关于计算机硬件讲得很清楚。
安装双系统(Windows+Linux)的流程:
- 使用U盘或SD卡做一个Linux系统的启动盘(启动方式);
- 在Windows下格式化一部分空间,至少20个G用于安装Linux系统;
- 重启电脑,进入BOIS选择启动优先级,U盘/SD卡启动(开始安装);
- 一步步选择,记住一般U盘/SD卡的磁盘分区是sda。
- 进入重要的Linux系统分区。就是把刚才在Windows下分出的空闲空间拿来分配Linux系统的各个分区(记住Linux系统的文件结构是树形),至少要有“/“根目录、”swap”分区;
- 接下来是引导程序的安装(这个错了的话,就算安装完成,也启动不了)。安装引导装载程序要安在sdb盘,也就是Windows下的C盘,并且是选择安装在MBR主引导分区上。
- 接下来就是选择安装系统的软件了,注意有些系统分DVD1和DVD2镜像文件,如果要安装完整的话,得结合两个盘安装才不会出错;
- 接下来等待吧,一杯咖啡的时间;
- 完成后重新引导,只要能够引导成功,那么就大功告成了。
(图就不上了,前辈们已做得很好,我只是把我以前遇到的问题点出,希望大家可以少走弯路)
二、不可忽略的常用命令
Linux系统里的操作一般都是通过在终端输入命令完成的,不像Windows是哪里不会点哪里,所以,我们需要掌握一些指令以方便我们更好地操作,到熟练后你会发现,用命令操作其实更为直接高效。
文件命令 如:ls, cd, mkdir, rmdir, cp, rm, more, cat, pwd, locate, grep, tar ……这些命令配合参数使用,能以不同的方式操作文件。
如果对于命令的参数不确定,可以用man命令查看。 eg:man rm 则可以查看rm的具体介绍以及所有参数使用的方式。
软件管理
也就是如何在Linux系统下安装一个软件,我们通过命令来完成。
- tar.gz或*.tgz或*.bz2形式的源码软件包:
解压 –> ./configure 配置 –> make 编译 –> make install 安装;
卸载是:make uninstall 或 手动删除;
以上是一般情况下的步骤,当然,最保险的方法是先读软件包下的README,里面会详细介绍安装方法,打开方式,软件内容等。 - rpm : RedHat Package Manager
可以安装二进制包以及源码包两种 - yum:Yellow dog Updater, Modified
可以同时配置对个资源库
主要是更方便添加/删除/更新/RPM包
便于管理大量系统更新问题
- tar.gz或*.tgz或*.bz2形式的源码软件包:
网络配置
最终要的两个网络配置命令:ifconfig 和 pingifconfig 显示或设置网络设备
eg:ifconfig eth0 192.168.0.1 netmask 255.255.0 up
eth0是第一个网卡,其他依次是eth1, eth*
192.168.0.1是给网络配置的IP地址
netmask 255.255.255.0 配置子网掩码ping 一般用于检测网络通不通
eg: ping 192.168.71.49
用于检测主机是否与192.168.71.49连通。
eg: ping www.csdn.net
检测主机是否可以和该网站连通
使用外部存储
mount和umount: 挂载和卸载可以把要挂载的分区写入 /etc/fstab,这样在开机的时候就能自动挂在了。
其他命令
passwd 设置密码
date 显示当前日期,也可用于设置日期
clock 显示当前日期,不过只能root用户使用
ntpdate 将系统时间设置成与校时服务器一致
shutdown 关机
reboot重启
……它们的参数可以通过man查看
三、Linux+C
学习C语言,可能并不能一下子就见到多么华丽的效果,前期也就是看到一个数或者字符串打印出来。但这个修炼的过程就是要耐住性子,直到你开始正在应用C做项目时,你会发现多么得心应手。
在Linux下,使用vim编辑器写你的C程序,关于vim的应用也在于多练。
整个流程就是:
使用vim 编辑 –> *使用gcc 编译 –> 将生成的.xxx文件 执行。
结束语
希望本篇文章对希望学习嵌入式的朋友有帮助,也希望各位前辈多多指正。