1、描述计算机的组成及其功能
计算机组成:
输入单元、输出单元、CPU内部控制单元、算数逻辑单元、主存储器
功能:
CPU包括内部控制单元和算数逻辑单元;
CPU两种架构:精简指令集(RISC)与复杂指令集(CISC);
精简指令集(RISC):微指令集较为精简,每个指令的运行时间都很短,完成的动作也很单纯,指令的执行效能较佳;但是若要做复杂的事情,就要由多个指令来完成。
复杂指令集(CISC);CISC在微指令集的每个小指令可以执行一些较低阶的硬件操作,指令数目多而且复杂,每条指令的长度并不相同。因为指令执行较为复杂所以每条指令花费的时间较长,但每条个别指令可以处理的工作较为丰富。
CPU=脑袋瓜子:每个人会作的事情都不一样(微指令集的差异),但主要都是透过脑袋瓜子来进行判断与控制身体各部分的活动。
主存储器功能:
主存储器包括内存和硬盘;
内存:脑袋中放置正在被思考的数据的区块:在实际活动过程中,我们的脑袋瓜子需要有外界刺激的数据 (例如光线、环境、语言等) 来分析,那这些互动数据暂时存放的地方就是主存储器,主要是用来提供给脑袋瓜子判断用的信息。
硬盘:等于脑袋中放置回忆的记忆区块:跟刚刚的主存储器不同,主存储器是提供脑袋目前要思考与处理的信息,但是有些生活琐事或其他没有要立刻处理的事情,就当成回忆先放置到脑袋的记忆深处吧!那就是硬盘!主要目的是将重要的数据记录起来,以便未来将这些重要的经验再次的使用;
输入单元功能:
键盘、鼠标、网卡之外,目前的体感装置也是重要的输入设备;就好像手脚一般,操纵着人体与外界环境的互动!
输出单位功能:
显示适配器=脑袋中的影像:将来自眼睛的刺激转成影像后在脑袋中呈现,所以显示适配器所产生的数据源也是 CPU 控制的。
2、按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。
基于Debian的发行版:
软件数量丰富,包管理工具强大,系统稳定
Ubuntu:以桌面应用闻名
Knoppix:以安全软件著称
基于RedHat的发行版:
RedHat Enterprise Linux:面向企业用户的的Linux系统,具有高度稳定性,支持个平台虚拟化
CentOS:针对收费版的RHEL而由社区二次开发的系统
Fedora:个人桌面版,基本每6个月发行一个版本
基于Slackware的发行版:
Slackware:以简洁、安全、稳定闻名
S.u.S.E:
openSUSE:以界面华丽闻名
SLES:企业版SUSE系统,转为服务器,大型机设计
其它:
Gentoo:对使用者有更高要求,支持定制,更加自由透明
ArchLinux:轻量简洁,追求代码最小化,软件更新速度快
3、描述Linux的哲学思想,并按照自己的理解对其进行解释性描述。
1、一切皆文件:把几乎所有资源统统抽象为文件形式,包括硬件设备,甚至通信接口等;
2、小型,由众多功能单一的程序组成,一个程序只做一件事,并且做好,通过组合小程序完成复杂任务;
3、尽量避免跟用户交互,用编程的方式实现自动化任务;
4、使用文本文件保存配置信息,无论要实现什么功能都只需要修改对应的配置文件即可。
4、说明Linux系统上命令的使用格式;详细介绍ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相应的示例来阐述。
1、 Linux系统上命令的使用格式:
COMMAND [OPTIONS...] [ARGUMENTS...]
选项:用于启用或关闭命令的某个或某些功能;
短选项:-c, 例如:-l, -h
多个短选项可命令使用,例如-l -h, 可写作-lh;
长选项:--word,例如:--long,--human-readable
参数:命令的作用对象,向命令提供数据;
注意:
①多选项,以及多参数和命令之间都应该使用空白字符分隔
②取消命令执行:Ctrl+c
2、 命令ifconfig使用详解
显示或配置网卡信息。
命令格式:
# ifconfig [interface]
# ifconfig //查看当前系统的网络配置情况。
# ifconfig interface //查看当前网卡的配置情况。
# ifconfiginterface [aftype] options | address ...
常用选项:
Up:启用当前网卡
Down:禁用当前网卡
修改地址(单次生效,重启丢失):
ifconfig eth0 hwether xx:xx:xx:xx:xx:xx: //修改当前网卡eth0的物理地址
ifconfig eth0 192.168.100.1 netmask 255.255.255.0 //修改当前网卡eth0的IP地址
ifconfigeth0:0 192.168.200.1 netmask 255.255.255.0 //在当前网卡添加不同段IP地址,可添加多个依次命名即可。
示例:
3、 命令echo使用详解
回显命令
命令格式:
echo [-neE] [arg ...]
选项:
-n: 禁止自动添加换行符号;
示例:
-e: 允许使用转义符;
\n: 换行
\t:制表符
示例:
\n代表换行(使用频率高)
\t代表tab (使用频率高)
echo “$VAR_NAME”:变量会替换,双引号表弱引用;
echo '$VAR_NAME': 变量不会替换,强引用;
4、 命令tty使用详解
显示当前连接终端设备名称。
命令格式:
tty [OPTION]...
示例:
5、 命令startx使用详解
字符界面切换至图形界面,前提该字符界面是由图形界面切换过来的。
6、 命令export使用详解
修改环境变量值
命令格式:
export [-fn] [name[=value] ...] or export –p
示例:
export 变量名=“值”
7、 命令pwd使用详解
显示当前目录
示例:
cd - 也是调用 $OLDPWD这个环境变量
8、 命令history使用详解
管理命令历史
登录shell时,会读取命令历史文件中记录下的命令:~/.bash_history
登录进shell后新执行的命令只会记录在缓存中;这些命令会用户退出时“追加”至命令历史文件中;
环境变量:
HISTSIZE:命令历史记录的条数;
HISTFILE:~/.bash_history;
HISTFILESIZE:命令历史文件记录历史的条数;
举例:
history -d offset(偏移量-编号):删除第几条命令
history -c 清空history命令记录
history #:显示第几条命令
举例:
!#:执行第几条命令
执行825条命令
举例:
!!:执行上一条命令
举例:
!string:执行以指定字符的命令
执行wh开头的命令
!$:调用上一条命令的最后一个参数
举例:
9、 命令shutdown、poweroff、reboot使用详解
关机或重启:
halt, poweroff
reboot
-f: 强制,不调用shutdown
-p: 切断电源
shutdown:
命令格式
shutdown [OPTION]... TIME [MESSAGE]
-r: reboot
-h: halt
-c:cancel(取消)
TIME:
now: 立刻
+m: 相对时间表示法,从命令提交开始多久之后;例如 +3;命令开始时3分钟后关机
hh:mm:绝对时间表示,指明具体时间;
10、命令hwclock使用详解
显示硬件时钟
-s, --hctosys (时间同步)
-w, --systohc(系统时间写入硬件时钟)
举例:
11、命令date使用详解
命令格式:
date [OPTION]... [+FORMAT]:显示
FORMAT: 格式符号
%D
%F
%T
举例
设定系统时间
date [MMDDhhmm[[CC]YY][.ss]]:设置 eg:date 0815072115.21
MM: 月分
DD:几号
hh: 小时
mm: 分钟
YY: 两位年份
CCYY: 四位年份
.ss: 秒钟
五、如何在Linux系统上获取命令的帮助信息,请详细列出,并描述man文档的章节是如何划分的。
区分内部外部命令:
# type COMMAND
举例:
显示cd为内部命令;
内部命令帮助:
# help COMMAND
举例:
外部命令帮助获取:
(1) # COMMAND --help
# COMMAND -h
(2) man COMMAND
手册页:/usr/share/man
man1 ...man8
man1:用户命令
man2:系统调用
man3:C库调用
man4:设备文件及特殊文件
man5:配置文件格式
man6:游戏
man7:杂项
man8:管理类的命令
注意:有些关键在不止一个章节中存在帮助手册;
要查看指定章节中的手册:man# COMMAND
man命令的配置文件:/etc/man.config
MANPATH/PATH/TO/SOMEWHERE: 指明新的手册文件搜索位置
# man -M/PATH/TO/SOMEWHERE COMMAND: 到指定位置下搜索COMMAND命令的手册页并显示之;
举例
man 2 :显示系统调用命令
whatis read
whatis read显示read有2个章节;(1p)和(3p)是没什么作用的;
man 2 read 显示第二章节帮助内容
帮助手册中的段落说明:
NAME(命令的名字和基本功能)
SYNOPSIS(命令的简要使用帮助)
DESCRIPTION(功能详细描述)
OPTIONS(选项)
EXAMPLES(使用示例)
AUTHOR(作者)
REPORTINGBUGS(报告BUG联系人)
SEE ALSO(其他参考方式)
SYNOPSIS:
[]:可选内容
<>: 必选内容
a|b:二选一
...: 同一内容可出现多次
man命令的操作方法:
Space, ^V,^f, ^F: 向文件尾翻屏;
b, ^B: 向文件首部翻屏;
d, ^D: 向文件尾部翻半屏;
u, ^U: 向文件首部翻半屏;
RETURN, ^N,e, ^E or j or ^J: 向文件尾部翻一行;
y or ^Y or^P or k or ^K:向文件首部翻一行;
q: 退出;
#:跳转至第#行;
1G: 回到文件首部
G:翻至文件尾部
文本搜索:
/KEYWORD:
以KEYWORD指定的字符串为关键字,从当前位置向文件尾部搜索;不区分字符大小写;
n:下一个
N:上一个
?KEYWORD:
以KEYWORD指定的字符串为关键字,从当前位置向文件首部搜索;不区分字符大小写;
n:跟搜索命令同方向,下一个
N:跟搜索命令反方向,上一个
(3) info
info COMMAND
(4) 程序自身的帮助文档
/usr/share/doc/COMMAND-VERSION
(5) 程序官方文档
(6) 发行版的官方文档
http://www.redhat.com/docs
(7) Google
(8) slideshare
http://www.slideshare.net/
六、请罗列Linux发行版的基础目录名称命名法则及功能规定。
根文件系统(rootfs):
root filesystem
LSB, FHS: (FileSystem HeiracheStandard)
/etc, /usr, /var, /root,/home, /dev
/boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader, grub)都存放于此目录;
/bin:供所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序;
/sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序;
/lib:基本共享库文件,以及内核模块文件(/lib/modules);
/lib64:专用于x86_64系统上的辅助共享库文件存放位置;
/etc:配置文件目录(纯文本文件);
/home/USERNAME:普通用户家目录;
/root:管理员的家目录;
/media:便携式移动设备挂载点;
cdrom
usb
/mnt:临时文件系统挂载点;
/dev:设备文件及特殊文件存储位置;
b: block device,随机访问
c: character device,线性访问
/opt:第三方应用程序的安装位置;
/srv:系统上运行的服务用到的数据;
/tmp:临时文件存储位置;
/usr: universal shared,read-only data;(全局共享,只读数据)
bin: 保证系统拥有完整功能而提供的应用程序;
sbin:
lib:
lib64:
include: C程序的头文件(headerfiles);
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相关的安全策略等信息的存储位置;