linux c第一天————嵌入式,linux操作系统

嵌入式设备:通过软件来控制硬件工作的设备
两类:有操作系统 没有操作系统(单片机开发)

嵌入式为什么要学习linux操作系统?
因为linux开源免费,可以对其进行修改,修改成适合不同的嵌入式设备的系统,可以定制,大部分嵌入式系统都使用的linux系统

为什么linux系统使用命令行?
定位不同,因为windows更多的是普通的家庭用户在使用,操作要傻瓜化,鼠标点点就可以,linux它的诞生之初是用来做企业服务器的,操作的都是专业人士,没有必须再安装桌面软件,浪费系统资源

1、介绍linux操作系统
1.1、linxu系统的发展史
什么是操作系统?
可以直接进行操作的系统=内核+工具软件+应用程序

内核:管理和控制硬件资源和软件资源的核心的一组程序

linux和unix的联系和区别?
1、linux的思想来源于unix
2、linux是自由的,unix是商业的

GNU:GNU is not unix 一个开发自由软件的计划
在GNU中的软件都是开源的

GPL:防止GNU中的开源软件被利用成为商业软件,如果使用了遵循GPL协议的软件,那么修改了之后,也要遵循GPL协议进行发行

1.2、linux系统的发行版本
发行版本=linux内核+各家的工具软件+各家的应用程序—》操作系统

两大分支:
1、Redhat系列(商业公司维护:卖服务、卖注释)
RHEL:收费的,稳定好,用于服务器
Fodaro:Redhat的社区版本,免费,稳定性差一些,桌面服务器
Gentos:RHEL的克隆,稳定,服务器

2、Debian系列(社区组织维护)
debian:社区类的典范
ubuntu:继承于debain,还封装了其他的特点,完全免费,桌面做的非常好,使用起来非常的人性化,特别适合初学者

嵌入式系统
嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。
1.3、linux系统的体系结构
在这里插入图片描述

1.4、linux的软件包管理

我们上课使用的是Debian软件包

Debian包文件包含了二进制可执行文件、库文件、配置文件和man/info帮助页面等文档。通常Debian包文件的后缀为“.deb”,因此称为“Deb软件包”。Ubuntu有两种类型的软件包:二进制软件包(deb)和源码包(deb-src)。
二进制软件包(Binary Packages):它包含可执行文件、库文件、配置文件、man/info页面、版权声明和其它文档。
源码包(Source Packages):包含软件源代码、版本修改说明、构建指令以及编译工具等。先由tar工具归档为.tar.gz文件,然后再打包成.dsc文件。
在这里插入图片描述

命令行方式的两种软件包管理工具:
1、dpkg:本地安装,不会分析软件包之间的依赖关系,需要自己理清依赖关系,然后分别安装
2、apt:在线安装,它会分析软件包之间的依赖关系,会自动将所需要的软件的依赖软件也会安装上

在这里插入图片描述

所以:如果你要安装哪个软件,但是软件找不到,你的解决方法?
1、更新本地索引文件
sudo apt-get update
2、如果更新了之后,还找不到,说明sources.list列出这些服务器的里面都没有我想要找的软件,这个时候就需要修改sources.list了
一般,就是在网上找阿里云的或者清华的软件源,注意ubuntu版本不能太低
https://blog.csdn.net/wang725/article/details/79902004

注意:在使用apt之前要保证你的虚拟机能够上外网

1、测试虚拟机是否能上外网
ping www.baidu.com或者打开浏览器
在这里插入图片描述

2、如果不能连上外网
配置虚拟机的网络
1、编辑–》虚拟网络编辑器–》添加网络-》设置为NAT模式
2、虚拟机–》设置–》网络适配器-》自定义-》NAT模式

在这里插入图片描述

3、找到右上角的扇形或者是上下箭头的图标
在这里插入图片描述

右击选择edit–》选择其中的一个connection–》edit–》选择ipv4–》选择DHCP(自动获取IP地址)
4、右击图标使能你刚才设置的connection
5、测试网络是否连通

命令:
下载并安装软件:sudo apt-get install 软件名
卸载:sudo apt-get remove 软件名
sudo apt-get autoremove 将不满足依赖关系的软件包自动卸载
查看软件的安装信息:apt-cache policy 软件名
软件包下载的目录:var/cache/apt/
删除软件包:sudo apt-get clean
作业:
1、使用apt安装basket、oneko、fortune-zh、cowsay
练习其他的命令 使用remove卸载
2、自己写代码实现strcat和strncat功能
再自己实现将一个字符串中的所有空格替换成20%

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值