天天看点

项目开发日报表

项目开发日报表

项目名称 【苏嵌实训-嵌入式 linux C 第1天】
今日进度以及任务 1.上午:嵌入式开发概述及嵌入式Linux C项目演示2.下午:嵌入式开发环境的安装及使用
本日任务完成情况(详细说明本日任务是否按计划完成,开发的代码量) 1.简单了解了嵌入式的概述 2.知道了传统单片机与嵌入式之前的区别 3.了解了嵌入式系统的组成4.知道了嵌入式操作系统分类5.学习了一些简单的Linux命令的使用 6.在学习的过程简单复习了一些C语言代码,按计划完成任务
本日开发中出现的问题汇总 1.今日出现的主要问题是在学习Linux命令时,当自己编写的命令出错时,全心于修改命令,导致没有及时听到老师接下来讲的课2.还有在修改vim配置时,开始使用的是vim /etc/vim/vimrc之后发现在应该CentOS上应该使用vim /etc /vimrc
本日未解决问题 今日没有解决怎么在CentOS上使用VS 编辑代码而不是使用vim编辑器
本日开发收获 知道怎么利用虚拟机模拟一个pc机去安装操作系统,了解了部分Linux管理用户,文件、目录操作相关命令
其他

随堂作业:1.嵌入式底层开发为什么选择c语言?<1>.从语言特点来说①C语言有出色的可移植性,能在多种不同体系结构的软/硬平台上运行。②简洁紧凑,使用灵活的语法机制,并能直接访问硬件能够直接访问硬件的语言有:汇编和C语言汇编属于低级语言,难以完成一些复杂的功能,但是汇编比C语言访问硬件的效率更高。所以,一般将硬件初始化的工作交给汇编,比较复杂的操作交给C语言。

③C语言具有很高的运行效率。

嵌入式开发的编程是要在开发板上跑的,占用内存的增多必然会影响性能。这样一来,C语言的优势就会凸现出来啦。

2.什么是实时性?软实时和硬实时?

实时性是指系统能及时响应外部事件的请求,在规定时间内完成对该事件的处理。

硬实时是指系统必须满足任务对截止时间的要求,否则可能出现难以预测的后果。

软实时是指也联系一个截止时间,但并不严格若偶尔错过了任务的截止时间,对系统产生的影响也不会太大。

3.Linux和unix之间的联系或者关系?

UNIX:1968年,MIT、Bell实验室、美国通用电气有限公司一起致力于开发 Multics 项目。1970年,当时在开发Multics项目的时候,实验室中有一个开发成员提议组织人员重新在Multics项目之上重新的开发,也就出现了1970年的Unix。当时Unix操作系统是使用的汇编语言(机器语言)开发的。1973年, 用C语言重写Unix,因为汇编语言有一个最大的局限性:对于计算机硬件过于依赖。导致移植性不好。1975年 Bell实验室允许大学使用Unix,但Bell实验室允许大学使用Unix操作系统用于教学作用,而不允许用于商业用途。

Linux:1991年,李纳斯当时学校使用的是Unix操作系统,然后其对系统的底层代码进行了修改,放到了学校为学生开放的网站上,原先他把文件命名写成了Linus’s Unix,后改成Linux。随后其他同学下载之后发现这个版本还是挺好用的,随后都把自己代码贡献给李纳斯。

两者之间的关系:Linux源自于UNIX,Linux是开源的操作系统,有开放性、多用户、多任务、良好的用户界面、优异的性能与稳定性的优点,但UNIX不是开源操作系统。

4.Linux主流的发行版有哪些?有什么特点?

(1) Debian:Debian运行起来极其稳定,这使得它非常适合用于服务器。Debian平时维护三套正式的软件库和一套非免费软件库。

(2) Gentoo:与Debian一样,Gentoo这款操作系统也包含数量众多的软件包。Gentoo并非以预编译的形式出现,而是每次需要针对每个系统进行编译。

(3) 红帽企业级Linux:红帽企业级Linux是系统管理员的第一选择,使用YUM程序包管理器。是商业化产品,所以不是免费的。

(4) CentOS:CentOS是一款企业级Linux发行版,它使用红帽企业级Linux中的免费源代码重新构建而成。

(5) Fedora:Fedora就是红帽公司的一个测试平台;产品在成为企业级发行版之前,在该平台上进行开发和测试。Fedora是一款非常好的发行版,有庞大的用户论坛,软件库中还有为数不少的软件包。

(6) Kali Linux:Kali Linux是Debian的一款衍生版。Kali旨在用于渗透测试。

(7) Arch Linux:Arch Linux的软件包管理器是Pacman。Arch Linux既支持X86处理器架构,又支持X86_64架构。Arch旨在从开发者的角度而不是从用户的角度做到力求简单。

(8) OpenSuse:OpenSuse这款Linux发行版是免费的,并不供商业用途使用,仍然供个人使用。随着snapper快照管理工具,因而可以恢复或使用旧版的文件、更新和配置。

5.有哪些虚拟机软件?特点?

(1)Vmware Workstation,VMware公司的虚拟机软件,VMware公司是全球桌面到数据中心虚拟化解决方案的领导厂商,Vmware Workstation是最好用的虚拟机软件之一。

(2)Virtual Box,Virtual Box是Oracle公司旗下的免费开源虚拟机软件。

(3)Windows Virtual PC,微软公司旗下产品,Windows Virtual PC 是最新的 Microsoft 虚拟化技术。您可以使用此技术在一台计算机上同时运行多个操作系统。

(4)VMware Player,VMware推出的免费小巧的虚拟机软件,精简版VMware Workstation。

6.如何解决无法删除使用userdel删除用户的问题(2种方法)

(1)使用vipw命令:

vipw 找到之前创建的用户,删除用户信息。

vipw -s 找到那个用户所属组,删除用户组信息。

(2)用 ps 查看该用户所有进程的pid,再将进程都 kill

7.罗列根目录中所有子目录以及其存放的文件类型

(1)bin:该目录中存储的都是一些二进制文件,文件都是可以被运行的。

(2)dev:该目录中主要存放的是外接设备,例如盘、其他的光盘等。在其中的外接设备是不能直接被使用的,需要挂载。

(3)etc:该目录主要存储一些配置文件。

(4)home:表示除了root用户以外其他用户的家目录,类似于windows下的User/用户目录。

(5)proc:process,表示进程,该目录中存储的是Linux运行时候的进程。

(6)root:该目录是root用户自己的家目录。

(7)sbin:全称super binary,该目录也是存储一些可以被执行的二进制文件,但是必须得有super权限的用户才能执行。

(8)tmp:表示“临时”的,当系统运行时候产生的临时文件会在这个目录存着。

(9)usr:存放的是用户自己安装的软件。类似于windows下的program files。

(10)var:存放的程序/系统的日志文件的目录。

(11)mnt:当外接设备需要挂载的时候,就需要挂载到mnt目录下。