第1周基础

1、描述计算机的组成及其功能。

计算机系统由硬件(Hardware)系统和软件(Software)系统两大部分组成,现代PC硬件系统是根据冯诺依曼体系结构设计和生产的,冯诺伊曼在1946年提出计算机主要由五大部分组成,它们分别是:运算器、控制器、存储器(包括主存储器和外部存储器)、输入设备和输出设备。

输入设备把需要的程序和数据输送到计算机;存储器保存程序和数据、以及运算的中间结果和最终结果;运算器对输入的数据进行各种算数、逻辑运算;控制器是协调机器各部件工作的;输出设备把处理的结果展示给用户。

五大单元连接图如下:

2、描述内核功能以及作用

内核的功能是管理系统的进程、内存、设备驱动程序、文件和网络系统,作用是为用户空间提供系统调用接口,提高系统稳定性。

3、按系列罗列常见Linux的发行版,并描述不同发行版之间的联系与区别。

主要分redhat系列和debian系列。不同发行版之间的区别主要是包管理工具的不同。
RedHat系列包括:RedHat、CentOS、Fedora
Debian系列包括:Linux Mint、Ubuntu、Debian GNU / Linux

其他:
Slackware系列包括:Suse、OpenSuse
Gentoo系列
ArchLinux系列

4、描述常见的开源协议(GPL,LGPL, BSD,Apache等)以及开源协议的区别

GPL:公共许可协议,它最显著的两个特点是:病毒性传播和不允许闭源的商业发布。所谓病毒性传播就是只要和 GPL 粘上关系就必须遵循 GPL 协议。GPL是针对软件的源代码版权,而不是针对编译后二进制版本的版权,所以你有权免费获取软件的源代码,但是没有免费获取软件的二进制版本的权利。

LGPL(lesser):它是GPL的一个主要为类库使用而设计的开源协议。LGPL 协议的类库作为独立模块被商业软件引用,是不需要开源商业软件的;但是在此模块上修改或衍生的代码也必须采用 LGPL 协议。

Apache: 它是著名的非盈利组织 Apache 采用的开源协议。它允许代码修改后,作为商业或开源软件再发布,但是每一个被修改的文件都必须放置版权说明。

BSD: 它是 Berkeley Software Distribution 的缩写,是一个给予使用者很大自由的协议。使用者可以自由使用,修改源代码后再作为开源或商业软件发布,但是必须在版权声明中提到使用BSD协议,并附带BSD协议,还不能使用原源代码作者的名义进行商业促销。

MIT:它和BSD协议一样宽范的协议,原作者只保留了版权,而没有其他限制。

5、描述Linux的哲学思想,并按照自己的理解对其进行解释性描述。

一切皆文件:
不论是命令、硬件设备、软件设备、操作系统、进程等等相对于操作系统内核而言,都被视为拥有各自特性或类型的文件。

小型、单一用途的程序:
程序和执行文件不是很复杂,这样才能保证Linux内核的高效运行。

组合小程序完成复杂任务:
复杂的任务可以通过连接多个简单的程序时间复杂的功能。在保证简单功能的高效性的同时,复杂的程序也必然是高效的。

尽可能避免跟用户交互:
使用命令行借口执行效率更高,易于其他工具结合实现更多的功能。

使用文本文件保存配置信息:
无论什么配置修改都只需修改器配置文件即可,配置文件时文本形式的,只需任意一款文本编辑器修改即可。

6、描述linux目录结构以及目录结构命名规定。

Linux目录结构命名规定
几乎所有的Linux版本都会遵循FHS(Filesystem Hierarchy Standard),中文翻译过来即为文件系统层次化标准。类似于Windows操作系统中c盘的文件目录,FHS采用树形结构组织文件。FHS定义了系统中每个区域的用途、所需要的最小构成的文件和目录,同时还给出了例外处理与矛盾处理。
Linux目录结构
/boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader, grub)都存放于此目录
/bin:供所有用户使用的基本命令;不能关联至独立分区, OS启动即会用到的程序
/sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序
/lib:启动时程序依赖的基本共享库文件以及内核模块文件(/lib/modules)
/lib64:专用于x86_64系统上的辅助共享库文件存放位置
/etc:配置文件目录
/home/USERNAME:普通用户家目录
/root:管理员的家目录
/media:便携式移动设备挂载点
/mnt:临时文件系统挂载点
/dev:设备文件及特殊文件存储位置
b: block device,随机访问
c: character device,线性访问
/opt:第三方应用程序的安装位置
/srv:系统上运行的服务用到的数据
/tmp:临时文件存储位置
/usr: universal shared, read-only data
bin:保证系统拥有完整功能而提供的应用程序
lib:32位使用
lib64:只存在64位系统
include: C程序的头文件(header files) 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:保存系统两次重启之间产生的临时数据
/sys:用于输出当前系统上硬件设备相关信息虚拟文件系统
/proc:用于输出内核与进程信息相关的虚拟文件系统
/selinux: security enhanced Linux,selinux相关的安全策略等信息的存储位置

猜你喜欢

转载自www.cnblogs.com/chown1987/p/11617213.html