1嵌入式底层开发为什么选用c语言
主要原因:
由于嵌入式开发是在操作系统内进行的,而我们的操作系统内核是由c语言构建的,因此使用c语言是必然的。
重要原因:
1、C语言具有出色的可移植性,能在多种不同体系结构的软/硬件平台上运行。
2、C语言具有简洁紧凑、使用灵活的语法机制,并能直接访问硬件。
3、C语言具有很高的运行效率。
2什么是实时性?硬实时和软实时又指什么?
实时性可以定义为:
在规定时间内系统的反应能力.一般,有实时要求的应用有两个突出的特点:其中的活动时间性强,要求在一定的时刻和或一定的时间内自外部环境收集信息、再及时作出响应。
硬实时是一个刚性的、不可改变的时间限制,它不允许任何超出时限的错误。而软实时的时限是一个柔性灵活的,它可以容忍偶然的超时错误。
3 linux和unix之间的联系
二者都是操作系统,但Unix 要早于 Linux,Linux 的初衷就是要替代 UNIX,并在功能和用户体验上进行优化,使得 Linux 在外观和交互上与 UNIX 非常类似。但二者相比Linux,运用空间更广,而且为开源软件。
4 Linux的主流发行版本及特点
1 Debian
Debian运行起来极其稳定,这使得它非常适合用于服务器。Debian平时维护三套正式的软件库和一套非免费软件库,这给另外几款发行版(比如Ubuntu和Kali等)带来了灵感。Debian这款操作系统派生出了多个Linux发行版。它有37500多个软件包,这方面唯一胜过Debian的其他发行版只有Gentoo。
2 ubuntu
Ubuntu是Debian的一款衍生版,也是当今最受欢迎的免费操作系统。Ubuntu侧重于它在这个市场的应用,在服务器、云计算、甚至一些运行Ubuntu Linux的移动设备上很常见。作为Debian Gnu Linux的一款衍生版,Ubuntu的进程、外观和感觉大多数仍然与Debian一样。它使用apt软件管理工具来安装和更新软件。它也是如今市面上用起来最容易的发行版之一。
3 Red Hat
这是第一款面向商业市场的Linux发行版。它有服务器版本,支持众多处理器架构,包括x86和x86_64。
4 CentOS
CentOS是一款企业级Linux发行版,它使用红帽企业级Linux中的免费源代码重新构建而成。这款重构版完全去掉了注册商标以及Binary程序包方面一个非常细微的变化。
5 Fedora
Fedora适合:想尝试最先进的技术,等不及程序的稳定版出来。其实,Fedora就是红帽公司的一个测试平台;产品在成为企业级发行版之前,在该平台上进行开发和测试。
6 OpenSuse
OpenSuse发行版是免费的,并不供商业用途使用,仍然供个人使用。
7 FreeBSD
FreeBSD是AT&T UNIX通过Berkeley Software Distribution(BSD)的间接后裔,是一个紧密集成的操作系统,由BSD内核和所谓的“用户空间”构成
8 Arch Linux
Arch是一款采用滚动发行方式的操作系统:只要安装一次就够了;每当发行了某个新版本,就可以升级发行版,不需要重新安装。
9 Linux Mint
Linux Mint是一个基于Ubuntu的发行版,最早于2006年由居住在爱尔兰的法国出生的IT专家Clement Lefebvre发布。
10 Mageia
起初只是一个红帽Linux的分支,KDE作为默认的桌面,更完善的硬件支持和一些用户友好的功能,加上媒体的积极评论,它获得了一定的知名度。Mandrake Linux后来变成了一个商业版本,并在2010年几乎破产之前更名为Mandriva。
5 有哪些虚拟机软件以及其特点?
1 Vmware Workstation,VMware公司的优秀虚拟机软件,VMware公司是全球桌面到数据中心虚拟化解决方案的领导厂商。这款虚拟机软件兼容性强大,VMware Tools也很强大,快照功能很快捷,方便,允许你在任意开机时刻创建系统快照和恢复,主要用于调试极易产生蓝屏的软件和工具,十分实用。
2 VirtualBox
VirtualBox最早是德国一家软件公司InnoTek所开发的虚拟系统软件,后来被Sun收购,改名为Sun VirtualBox,性能有很大的提高.因为他是开源的,不同于VM,而且功能强大,可以在 Linux/Mac 和 Windows 主机中运行。
3 Virtual PC
它能够让你在一台 PC 上同时运行多个操作系统,使用它你不用重新启动系统,只要点击鼠标便可以打开新的操作系统或是在操作系统之间进行切换。安装该软件后不用对硬盘进行重新分区或是识别,就能够非常顺利地运行你已经安装的多个操作系统,而且还能够使用拖放功能在几个虚拟 PC 之间共享文件和应用程序。
4 KVM
是 Linux 下 x86 硬件平台上的全功能虚拟化解决方案,包含一个可加载的内核模块 kvm.ko,提供和虚拟化核心架构和处理器规范模块。使用 KVM 可允许多个包括 Linux 和 Windows 每个虚拟机有私有的硬件,包括网卡、磁盘以及图形适配卡等。
6 如何解决使用userdel删除用户的问题?
1 直接使用,通常是只有root权限才能执行这项操作
2 userdel 提供了 -f 选项来强制删除用户,甚至当用户已经登入 Linux 系统时此选项仍旧生效。
3 sudo userdel
7 根目录中所有的子目录以及其文件类型
bin:是Binary的缩写,这个目录存放着最经常使用的命令。
dev:是Device的缩写,该目录存放Linux的外部设备,在Linux中访问设备的方式和访问文件的方式一样。
home:用户的主目录,在Linux中,每个用户都有一个自己的目录,一般以用户名账号命名。
lost+found:这个目录一般是空的,当系统非法光机后,这里存放了一些文件。
misc:(misc device)杂项设备,一般是嵌入式设备。
proc:这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
sbin:存放是系统管理员使用的系统管理程序。
srv:该目录存放一些服务启动之后需要提取的数据。
tmp:存放临时文件。
var:存储着各种变化的文件,如log等文件。
boot:存放启动Linux时的核心文件,包括一些连接文件以及镜像文件。
etc:这个目录用来存放所有的系统管理所需要的配置文件和子目录。
lib:存放着系统最基本的动态链接库,其作用相当于Windows中的dll文件。
mnt:为用户提供临时挂载的文件系统,如光驱。
opt:存放主机安装软件的目录,安装的软件都能在此文件夹找到。
root:根目录。
selinux:是Redhat/Centos特有的目录,是个安全机制,相当于防火墙。
sys:该目录下安装了一个文件系统sysfs。
usr:用户的应用程序的文件都在这个目录下。相当于Windows下的program files。
本材料内容参照于百度百科以及相关系统软件的官方网站