嵌入式和Linux简介

2019-07-12 18:23发布

以下内容均为原创,未经许可不得转载 --------------------------------------------------------------------------------------------

什么是嵌入式?

(一)、单片机与嵌入式
1、单片机:软件<----------->硬件
     即由软件直接调用硬件,软件要与硬件确切吻合,此开发方式耦合度太高,可移植性差,开发效率低。
2、嵌入式:软件<----------->操作系统<----------->硬件
     嵌入式开发在软件和硬件层加入操作系统。
3、由此可以看出,单片机的开发,由于有时候硬件过于复杂,而且需要软硬件都了解,对开发效率造成很大影响。
4、嵌入式定义:
     给一个已有的硬件平台移植操作系统(移植!=安装,移植需要修改操作系统的源码)
5、什么是操作系统?
     操作系统是一款软件,主要用于管理资源。
6、嵌入式主要的任务
     做上层的应用和底层的系统软件
7、为什么要移植操作系统?
     <1>减少软硬件的耦合度,提高软件的可移植性
     <2>提高软件的开发效率及其功能性
     <3>操作系统是一个资源库,有很多开源的软件和工具可以直接使用
8、嵌入式的主要缺点:使开发成本变高
9、平台的分类
     软件平台(wince、linux……),硬件平台(DSP、ARM、单片机)
10、判断是否为嵌入式?
     主要看其产品上是否有操作系统
11、嵌入式的工作类别和其需要掌握的技能
      应用软件开发:<1>精通一门语言
                               <2>熟悉一款操作系统
                               <3>算法与数据结构
      系统软件开发:<1>精通C语言
                               <2>熟悉汇编语言
                               <3>熟悉主流硬件的设备工作原理(51、AVR、DSP、ARM)
                               <4>熟悉模数电
                               <5>理解操作系统的实现
12、操作系统的选择:
     (一)、按收费类型
     <1>商用型:VXWORKS(美国军方)、WINCE(windows提供,主要用于金融领域)
     <2>免费型:Linux、μc/os-II(单片机使用,为最精华的操作系统)
     (二)、按实时性:(实时性:在规定时间点完成规定动作)
     <1>硬实时:VMWORKS
     <2>软实时:WINCE、RTLinux
     <3>无实时


Linux简介

     (一)、基本介绍:
     开发时间:1991年10月;
     开发者:Linus Torvalds(Linux 0.1)
     UNIX比Linux之前发行,是商业软件。
     posix(LinuxyuUNIX相互兼容的协议)可移植操作系统接口。
     (二)、Linux特点
     <1>社团    <2>免费    <3>开放    <4>易获取    <5>稳定    <6>GPL(必须为修改的源码开源的协议)
     (三)、Linux发行版简介
     发行版的组成:<1>、Linux内核
                              <2>、一些GUN工具与库(GUN=GUN is not Unix,即指明这些工具只能在Linux用)
     发行版:<1>Red hat    <2>Ubuntu    <3>SUSE

Linux常用命令


    1、切换用户:su - pzh,管理员标识为”#“,普通用户为”$“      2、添加用户:addusr mm      3、为新用户添加密码:passwd mm      4、清屏:clear或者reset      5、@localhost:系统装在本地           [root@192.168.1.10]表明系统不在本机      6、”~“当前用户工作目录      7、查看目录文件:ls      8、查看目录文件并且列出详细信息:ls -l      9、在Linux系统中都为文件      10、文件类型:<1>普通文件(以”-“开头)    <2>目录文件(以”d“开头)    <3>设备文件(以”c“开头)                               <4>链接文件(以”l“开头)     以”p“开头为管道文件              以”s“开头为共享文件      11、-rw (当前用户权限)rw-(同用户组用户权限)-w-(其他用户权限)      12、修改文件权限:chmod u+x a(按Tab键补齐文件名)(对文件当前用户增加x(可执行)权限)                                          chmod g+r 文件名                              (对同用户组用户增加r(可读取)权限)                                      chmod a+w 文件名                             (对所有用户增加w(可写入)权限)                                      chmod o+x 文件名                              (对其他用户增加x(可执行)权限)      13、查询命令功能:man      14、修改文件权限:chmod 666 a(按Tab补齐文件名)              r----->4    w----->2    x----->1              文件权限变为:-rw-rw-rw      15、创建一个文件:touch              touch hello.c    touch hello.txt      16、查看文件内容:cat        cat hello.c      17、删除文件:rm    rm hello.c (此方法会出现是否删除提示)    rm -f hello.c(直接删除,没有提示)      18、cd .. 返回上一目录    cd ~ 返回到当前工作目录    cd / 进入根目录             因为在@root ~下切换cd ~显示切换至根目录,所以root的工作目录为根目录下的root目录             home为普通用户的工作目录      19、根目录的部分内容:             <1>bin:此目录存放命令             <2>sbin:此目录存放超级用户的命令             <3>etc:存放配置文件      20、创建一个目录:mkdir    mkdir 1128      21、删除一个空目录:rmdir    rmdir 1128(注意只能删除空的目录)             删除一个非空目录:rm -rf 1128 (r为目录选项,f为强制)      22、拷贝文件:cp    cp hello.c 1128 (将hello.c复制到1128目录中)             拷贝目录:cp -r mm 1128(将目录mm复制到目录1128中)      23、相对路径:从当前目录开始的路径为相对路径             cp hello.c 1128 (其中hello.c和1128都是为相对路径)             绝对路径:从根目录开始的路径为绝对路径             cp /root/hello.c /root/mm (其中/root/hello.c和/root/mm都为绝对路径      24、剪切文件:mv    mv hello.c mm             文件改名:mv mm kk (将文件名mm改为kk)      25、显示日期和时间的:date             date +%Y/%m/%d        date +%H:%M      26、显示日历:cal      27、改变文件所属用户组:chgrp users hello.c             改变文件所属用户:chown pzh hello.c      28、用户有效用户组的查看:groups      29、添加用户组:groupadd group1             删除用户组:groupdel group1      30、取文件前几行:head -n 文件名        head -4  /etc/man.config             取文件后几行:tail -n 文件名            tail -4 /etc/man.config      31、关机:poweroff、shutdown      32、查看历史命令:history    history 4(查看四条历史命令)      33、打开vi编辑器并创建文件:vi test.txt      34、删除用户:userdel kk

Linux命令扩充

1、查找文件:find 2、创建软连接:ln         ln www.baidu.com ss 3、设置网端:ifconfig eth0(网卡代号) 192.168.10.1(IP地址) 4、连续创建文件夹: mkdir test1/test2/test3 5、取文件名最后部分:basename         basename test1/test2/test3 -----> test3 6、取文件最前面的部分:dirname 7、查找两个文件的不同之处:diff 8、查看当前路径:pwd 9、倒序查看:cat


复制粘贴删除操作

所有操作在命令行模式下
1、nyy:复制从光标位置以下n行的内容
2、p:粘贴
3、dd:删除