Linux+C 入门之路

   当初次接触嵌入式时,我在虚拟机上安装了一个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系统下安装一个软件,我们通过命令来完成。

    1. tar.gz或*.tgz或*.bz2形式的源码软件包:
      解压 –> ./configure 配置 –> make 编译 –> make install 安装;
      卸载是:make uninstall 或 手动删除;
      以上是一般情况下的步骤,当然,最保险的方法是先读软件包下的README,里面会详细介绍安装方法,打开方式,软件内容等。
    2. rpm : RedHat Package Manager
      可以安装二进制包以及源码包两种
    3. yum:Yellow dog Updater, Modified
      可以同时配置对个资源库
      主要是更方便添加/删除/更新/RPM包
      便于管理大量系统更新问题
  • 网络配置
    最终要的两个网络配置命令:ifconfigping

    1. ifconfig 显示或设置网络设备

      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 配置子网掩码

    2. ping 一般用于检测网络通不通

      eg: ping 192.168.71.49
      用于检测主机是否与192.168.71.49连通。
      eg: ping www.csdn.net
      检测主机是否可以和该网站连通

  • 使用外部存储
    mountumount: 挂载和卸载

    可以把要挂载的分区写入 /etc/fstab,这样在开机的时候就能自动挂在了。

  • 其他命令
    passwd 设置密码
    date 显示当前日期,也可用于设置日期
    clock 显示当前日期,不过只能root用户使用
    ntpdate 将系统时间设置成与校时服务器一致
    shutdown 关机
    reboot重启
    ……

    它们的参数可以通过man查看

三、Linux+C

学习C语言,可能并不能一下子就见到多么华丽的效果,前期也就是看到一个数或者字符串打印出来。但这个修炼的过程就是要耐住性子,直到你开始正在应用C做项目时,你会发现多么得心应手。

在Linux下,使用vim编辑器写你的C程序,关于vim的应用也在于多练。
整个流程就是:
使用vim 编辑 –> *使用gcc 编译 –> 将生成的.xxx文件 执行

结束语

希望本篇文章对希望学习嵌入式的朋友有帮助,也希望各位前辈多多指正。

猜你喜欢

转载自blog.csdn.net/Being__/article/details/74029542