在林老师的公众号文章内很清楚地分析了当前几种热门语言的特点,并详细说明了c的优势究竟在哪里。 林老师提到C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码,并且不需要任何运行环境支持,便能运行的编程语言,其移植性好,能够在多种不同体系结构的软件或硬件平台上运行;
相对来说,C语言在高级语言当中是最贴近物理层面的语言,经过一系列的编译转换,最终它会成为0101的机械码,可以操作硬件,并且具有简介紧凑、使用灵活的语法机制.
C语言具有很高的运行效率。通过观察C语言的背景可以看得出:汇编语言 - B语言 - C语言。在芯片上执行的程序:写汇编执行效率最高,C语言其次,大概在80%左右。 相比较而言汇编指令不多且内存小,Java是面向对象编程,是编译器在后面增加大量的东西的才变成机器语言,换而言之,这样程序无法直接操作内存。 种种情况综合下来,只有C语言才是最适合嵌入式底层开发的。
什么是实时性 实时系统(Real Time System)是指产生系统输出的时间对系统至关重要的系统。从输入到输出的滞后时间必须足够小到一个可以接受的时限内、软实时:只能提供统计意义上的实时 硬实时:计算机主板上的硬件控制的实时
1.两者的本质不同: Linux是开发源代码的自由软件,用户对前者有很高的自主权,在实际的的开发是处在一个完全开放的环境之中; 而unix是对源代码实行知识产权保护的传统商业软件,用户的开发完全是处在一个黑箱之中… 2.两者的运行的平台不一样: Linux可以运行在多种硬件的平台上,不会造成什么大的影响; 而unix系统大多是与硬件配套的; 3.两者在核心是否公开不一样: linux的核心是免费的,自由使用的,核心源代码是开放的;
LInux主流发行版 Debian的稳定性很好,同时也提供了最大和最完整的软件仓库
Debian 是社区类Linux的典范。是最为祖训GNU规范的Linux系统。
Debian包含三个分支版本:
stable: 用于服务器,软件包大部分比较过时,不过,稳定性和安全性特别高。
testing 它的版本都经过STABLE的测试,所以相对来说比较新和稳定
unstable 为最新的测试版本。
Debian最具特色的是apt-get / dpkg 包管理方式。同时,它的资料也很多。
根据桌面系统不同,有三个版本
1, ubuntu 基于Gamenome的Ubuntu,Ubuntu是基于Debian的unstable版本加强而来。近乎完美。
2, 基于KDE的kubuntu
3, 基于Xfc的xubuntu
它们的特点都是界面非常友好。是适合做桌面的发行版本。
2.1.2 Redhat Linux
是红帽公司研发的Linux发行版本。包括 Fedora ,REHL ,Centos和Oracle Linux。
其中,Centos用于活动,演示和实验。它是对用户免费提供的。同时,很多的企业服务器也是使用的Centos。
2.1.3 SUSE
SUSE 包括 SLES 和 openSUSE
SLES(SUSE Linux Enterprise Server(SLES):服务器操作系统,是唯一与微软系统兼容的Linux操作系统。 OpenSUSE:由suse发展而来,旨在推进linux的广泛使用,主要用于桌面环境,用户界面非常华丽,而且性能良好。 目前流行的虚拟机软件有VMware(VMWare ACE)和Virtual PC,它们都能在Windows系统上虚拟出多个计算机,用于安装Linux、OS/2、FreeBSD等其他操作系统。微软在2003年2月份收购Connectix后,很快发布了Microsoft Virtual PC 2004。但出于种种考虑,新发布的Virtual PC 2004已不再明确支持Linux、FreeBSD、NetWare、Solaris等操作系统,只保留了OS/2,如果要虚拟一台Linux计算机,只能自己手工设置。相比而言,VMware不论是在多操作系统的支持上,还是在执行效率上,都比Virtual PC 2004明显高出一筹,这也是本文选择它的理由之一。 电脑一台变两台,学用Linux不再有后顾之忧
如何解决使用userdel删除用户的问题 为了在删除用户时完全删除家目录,我们可以使用 -r 选项。这个选项同样会删除用户的邮件池,如果存在的话。 强制删除一个用户 userdel 提供了 选项来强制删除用户。甚至当用户已经登入 Linux 系统时此选项仍旧生效。请看一下示例截图。 截图的上面显示用户 已经登录了系统。它被标记的进程6218是 SSHD 进程。
罗列根目录中所有子目录的功能以及存放的文件类型 (bai1)/ : 根目录 (2)/bin :存放启动时所需要的du普通程zhi序 (3)dao/boot : 存放内核及启动所需要的文件 (4)/dev :存放设备相关的文件 (5)/etc :存放系统的配置文件 (6)/home:存放用户文件的主目录,用户数据( cd ~ 可进入自己的主目录) (7)/闪电b :存放启动时所需要的库文件 (8)/mnt :存放临时的映射文件,通常是一些用来安装其他设备的子目录(如 /mnt/菜刀rom /mnt/floppy) (9)/proc :这是一个虚拟的文件系统,存放当前系统的状态(有关进程和系统信息) (10)/root: 超级用户主目录 (11)/sbin: 存放启动时所需要的系统管理程序 (12)/tmp :存放启动时产生的临时文件 (13)/usr : 包含一般不需要修改的应用程序,命令程序文件,程序库,手册 (14)/胜利ar :存放系统产生的经常变化的文件 (15)/胜利ar/tmp: 存放用户的临时文件 (16) /usr/闪电b: 存放非启动用的库文件 (17)/闪电b/modules /: 存放内核模块 (18)/胜利ar/log:存放大多数日志文件 (19)/胜利ar/run: 存放运行时的信息 (20)/胜利ar/闪电b: 存放一些系统运行时需要的文件 (21)/胜利ar/spool: 存放邮件,新闻及打印序列 (22)/etc/X11:存放X窗口系统所需要的配置文件 (23)/etc/init.d :存放启动描述文件,包括各种模块和服务的加载描述 (24)/etc/rcS.d :存放一些连接到 /etc/init.d的文件,根据runlevel的不同而执行不同的描述 (25)/etc/rc0.d—/etc/rc6.d: 存放一些连接文件,只在指定的runlevel 下执行相应的描述 (26)/usr/X11R6,/usr/X11,/usr/Xfree86 :存放X窗口系统所需要的文件 (27)/usr/bin : 存放应用程序二进制可执行文件 (28)/usr/sbin:存放大部分系统程序 (29)/usr/games:存放游戏程序及相应的数据 (30)/usr/include:存放c 和c++的头文件 (31)/usr/info:存放GNU Info程序所需要的数据 (32)/usr/man:存放man程序所需要的数据 (33)/usr/骚扰c:存放源代码文件 (34)/usr/doc: 存放文档文件 (35)/usr/local:存放本地计算机所需要的文件 (36)/usr/握手d:存放各种共享文件 项目名称 【苏嵌实训•嵌入式linuxC第1天】 今日进度以及任务 学习了vim指令 本日任务完成情况 (详细说明本日任务是否按 计划完成,开发的代码量)
基本完成了vim指令的学习本日开发中出现的问题汇炮
出现问题:不能进入编译器本日未解决问题 没有解决老师布置的C语言问题 本日开发收获
收获了linux编译指令和Linux的构成作用等 其他