N32-第一周-小罗

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相关的安全策略等信息的存储位置;

你可能感兴趣的:(N32-第一周-小罗)