1、描述计算机的组成及其功能
计算机是由计算机软件系统和计算机硬件系统两大系统组成
计算机硬件组成
1946年数学家冯诺依曼提出,计算机硬件由运算器、控制器、存储器、输入设备和输出设备5大部件组成,如下图
计算机各个组成部分的功能:
运算器的功能主要实现算术运算和逻辑运算与控制器组成CPU。
控制器的功能主要就是将指令逐条从存储器中取出,经译码分析后向各相应的操作控制信号作用于其他部件,使得各个部件有条不紊协调工作。
存储器的功能主要是将计算机各程序和各种数据信息存储下来,并能在计算运行过程中高速、自动地完成程序和数据的存取。
输入设备的功能是用来向计算机输入各种原始数据和程序,比如键盘,鼠标等
输出设备的功能是将计算机的运算结果或者中间数据、结果等打印或者显示出来,比如显示器。
计算机软件由系统软件和应用软件组成,系统软件是指由计算机生成厂家(部分“由第三方”)为使用该计算机而提供的基本软件,最常用的有操作系统、文字处理程序、计算机语言处理程序、数据库程序、联网及通讯软件、各类服务程序和工具软件等。其中操作系统是最基本最重要的系统软件,它负责管理计算机系统的各种硬件资源(如CPU\内存、磁盘、外部设备等)并且负责解释用户对机器的管理命令,使它转换为机器实际的操作。常见的系统有Linux、Windows、unix等。
2、描述内核功能以及作用。
内核是操作系统最基本的部分,它是为众多应用程序提供对计算机硬件的安全访问的一部分软件,这种访问是有限的,并且内核决定一个程序在什么时候对某部分硬件操作多长时间,是操作系统工作的基础。它负责管理系统的进程、内存、设备驱动、文件和网络系统。
Linux内核主要功能和作用是负责系统的进程管理、内存管理、文件系统、设备驱动管理、网络管理。
内存管理:内核为每个程序建立一个虚拟的地址空间,并管理内存的申请和释放。
进程管理:负责进程的创建回收监控等一系列的进程管理。
文件系统:负责管理和存储文件信息的软件,负责管理和调度文件的储存空间、提供文件的逻辑结构、物理结构和储存方法;实现文件从标识到实际地址的映射,实现文件的控制操作和存取操作,实现文件信息的共享并提供可靠的文件保密和保护措施,提供文件的安全措施。
设备驱动管理:负责加载或移除以及管理相关设备驱动模块的使用。从而实现控制硬件的目的。
网络管理:负责管理各种网络设备,并实现各种网络协议栈,最终实现和其他网络或设备连接通信。
3、按系统罗列常见Linux的发行版,并描述不同发行版之间的联系与区别。
Linux的常见发行版有:RedHat、Fadora、suse、红旗、debian、Ubuntu、centos
不同的发行版之间的联系和区别:
RedHat,是redhat自己的发行的企业版,也是redhat的一个重要节点。
Fedore是一款基于Linux的操作系统,也是一组维持计算机正常运行的软件集合,由红帽公司赞助。
suse Linux,针对个人用户。
红旗Linux的发行版,包括桌面版、工作站版、数据中心版,是中国较大、较为成熟的Linux版本之一。
debian,三大发行版中唯一以社区形式运作,不以商业公司形式运作。是一个致力于创建自由操作系统的合作组织。而其debian开发者所创建的操作系统中绝大部分基础工具来自于GNU工程。
ubuntu,是一个以桌面应用为主的Linux操作系统。ubuntu的目标在于为一般用户提供最新的、相当稳定的操作系统。
centos,是一个基于redhatLinux提供的可自由使用源代码的企业级Linux发行版,目前centos已被redhat公司收购,成为redhat旗下的一个组织。
4、描述常见的开源协议(GPL,LGPL,BSD,Apache等)以及开源协议的区别。
GPL:是GUN General Public License 的缩写,它和其他的开源协议不一样,在获取源代码修改后不允许闭源,新增代码重新发布时要采用GPL开源协议。
LGPL:是GUN Lesser General Public Licese (GNU 宽通用许可证)的缩写,在GPL协议的基础上发布的更宽松的协议,获取源代码修改后可以选择公开一部分源代码,来获取开发软件的拥有权。
MPL:是The Mozilla Public License的缩写,Mozilla小组为其开源软件项目设计的软件许可证,它在获取开源源码中,修改里面的一部分代码后选择提供说明文档,来描述改动的功能。
BSD:是原先用在加州大学伯克利分校发表的各个版本的许可证(BSD是Berkly Software Distribution的缩写)。相较于GPL许可证和MPL许可证的严格性,BSD许可证就宽松很多,一样是只需要附上许可证的原文,但它还要求进一步的将开发者将自己的版权资料放上去,所以以BSD许可证发行的软件,可能会遇到一些版权资料许可证所占空间比程序还大的状况。
MIT:许可证之名源自麻省理工学院(Massachusetts Institute of Technology,MIT),是许多软件授权条款中,被广泛使用的一种。与其他常见的软件授权条款(如GPL、LGPL、BSD)相比,MIT是相对宽松的软件授权条款,但是赋予软件被授权人更大的权力与更少的限制。
Apache:许可证(Apache Licese)是一个在Apache软件基金会发布的自由软件许可证,Apache许可证要求被授权者在每一个文件中写入版权申明,以维护开发者的劳动成果。
5、描述Linux的哲学思想,并按照自己的理解对其进行解释性描述。
1)一切皆文件(包括硬件)
一切皆文件是Linux的基本哲学思想,普通文件,目录文件、字符设备、块设备等这些在Linux系统里都是以文件的形式存在。
2)小型,单一用途的程序
一个单一的程序或者可执行的文件,不会太过于复杂也不会过大,这样才能保证Linux的高速运转,简单说就是一个功能就用一个小而简单的程序实现。
3)连接程序,共同完成复杂的任务
过于复杂的程序,Linux会通过链接很多简单不同功能的程序来共同实现一个复杂的过程,保证了简单功能高效的同时也实现了复杂程序,当然实现复杂程序也必然是高效的。
4)避免令人困惑的用户界面
Linux上支持的脚本语言种类十分丰富、易学简单,方便使用者以脚本的方式自动完成众多功能。
5)配置数据存储在文本中
Linux是一款开源的系统,所有的系统配置都写在配置文件之中,无论修改什么只要在配置文件中修改即可,修改配置文件只需要任意一款文本编辑器就可以。不用像Windows只可以在注册表中修改,工具单一,过于复杂。
6、描述Linux目录结构以及目录结构命名规定。
/boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader,grub)都存放于此目录
/bin:所有用户使用的基本命令;不能关联至独立分区,os启动即会用到的程序
/sbin:管理类的基本命令;不能关联至独立分区,os启动即会用到的程序
/lib:启动时程序依赖的基本共享库文件及内核模块文件集(/lib/modules)
/lib64:专用于x86_64系统上的辅助共享库文件存放位置
/etc:配置文件目录
/home/USERNAME:普通用户家目录
/root:管理员的家目录
/media:便携式移动设备挂载点
/mnt:临时文件系统挂载点
/dev:设备文件及特殊文件存储位置
/opt:第三方应用程序的安装位置
/srv:系统上运行的服务用到的数据
/tmp:临时文件储存位置
/usr:universal shared ,read-only data(通用共享只读数据),
bin:保证系统拥有完整功能而提供的应用程序
sbin:
lib:32位系统使用
lib64:只存在64位系统
include:C程序的头文件(head file)
share:结构化独立的数据,例如doc,man 等
local:第三方应用程序的安装位置,它下面也有bin,sbin,lib,lib64,etc,share,其作用同上
/var:variable data files(变动的数据文件)存放一些经常要变动的文件目录,如系统日志文件,应用程序的日志文件等。。
cache:应用程序缓存目录
lib:应用程序状态信息数据
local:专用于为/usr/local下的应用程序储存可变数据;
lock:锁文件
log:日志目录及文件
opt:专用于/opt下的应用程序储存可变数据;
run:运行中的进程相关数据,通常用于存储进程pid文件
spool:应用程序数据池
tmp:保存系统两次重启之间产生的临时数据
/proc:用于输出内核与进程信息相关的虚拟文件系统
/sys:用于输出当前系统上硬件设备相关信息虚拟文件系统
/selinux:security enhanced Linux,selinux相关的安全策略等信息的存储位置
Linux目录结构被组织成一个单根倒置树结构,文件系统从根目录下开始,用“/”表示,文件名称区分大小写,以“.”开头的文件都是隐藏文件,路径分割符为“/”。
目录结构命名规定
1.文件名最长255个字节
2.包括路径在内文件名称最长4095个字节
3.一般显示蓝色的文件都是目录,绿色表示是可执行文件 ,红色表示压缩文件,浅蓝色表示连接文件,黄色表示设备文件,灰色表示其他文件。
4.标准Linux文件系统(如ext4),文件名称大小写敏感。