第一周博客作业

原创 2017年01月03日 14:26:25

   第一次自己动手写博客,而不是转载或者收藏,还是满忐忑的,希望是一个好的开始,以下内容均为依照记忆或者说学习到的知识总结,之后会另写一篇博文根据网络查询到的更严谨完整的答案作为总结。
一、描述计算机的组成及其功能。
答:计算机主要有五个部分组成,分别是:运算器、控制器、存储器、输入设备、输出设备。
  1、控制器为整个计算机工作中的核心,负责调度所有组件之间的配合;
  2、运算器为计算机性能的标杆,可以说它决定了计算机的性能高低,简单的说,运算能力越强,计算机的性能也越高;
  3、存储器的作用为将所有需要用来处理或者已经处理好的数据存储记录下来;
  4、输入输出设备则是人与计算机交互的关键;
  具体到实际应用中,一般情况下计算机的运算器和控制器是由CPU来完成的,存储器由计算机的CPU缓存、内存以及硬盘组成,输入输入设备常见的是键盘、鼠标、显示器、音箱等。
  一个完整的工作流程应为:
  使用计算机的人通过输入设备,将需求或者说 计算请求告知计算机,此时控制器根据需求,将存储器中指定的数据交由运算器处理,运算器将运算所得结果回传至存储器,并最终通过输出设备反馈给人。

二、按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。
答:Linux系统全名为GNU/Linux,是由很多的开源软件组成的系统,所谓开源即将软件的源代码公布,任何人都可以自由学习、修改、分发、使用这些代码,这也是GNU组织的核心宗旨,我们知道,计算机是采用二进制来计算的,那么任何软件如果想要运行在计算机上,都必须是二进制的文件,而从源码转换为二进制文件的过程称之为编译,这个过程需要相当的技术能力才可以完成,但是大多数使用或者说想要使用Linux系统的人并不具备这样的能力,这时,就出现了一批具备对源码进行编译能力的人,因为各种不同的原因(这其中当然有商业原因,也有可能只是为了将自己的想法告诉大家,甚至只是为了show一下能力)对GNU组织发布各种的软件源代码,进行不同的搭配或者修改,并将其编译为可以在计算机上直接运行的二进制文件,并打包提供给大家使用,这就是我们所说的Linux的发行版,其中主要有三个大的分支:
Debian:
  Ubuntu
Slackware:
  S.u.S.E
  OpenSUSE
Redhat:
  CentOS
  Fedora
  简单的说,各种发行版的Linux他们的核心或者说基本特征是一致的,那就是,使用GNU组织或其他开源组织发布的源代码,通过筛选,将各种基础功能及公共运行库汇编为一套完整的可以直接安装于计算机上运行的系统,所不同的是,他们的文件结构或者说目录结构、具体的软件、偏重的特点不同,一般情况下,各个Linux发行版之间的软件都是可以通用的。

三、描述Linux的哲学思想,并按照自己的理解对其进行解释性描述。
答:Linux的哲学思想主要是:
  1、一切皆文件;
  这也是Linux的核心思想,在Linux系统中,任何的资源都是以文件的形式存在的,无论是硬件资源还是外部连接,一切的一切都是有文件来表示的。
  2、模块功能准确且单一
  每一个模块或者说软件的功能尽可能的精简,争取做好,并且只做一个功能,这样做的好处是用户可以根据需要精准的定制自己的系统,刚刚好完成自己的需求且又不会有额外的资源损耗及故障隐患的存在。
  3、减少人机交互
  尽量减少系统在运行过程中与用户的交互,按照可编程并自动化运行的思路来构建系统,以追求效率的最大化。
  4、使用文本配置
  所有的软件配置均使用文本的方式存储与计算机中,这样做的好处显而易见,对于任何的软件配置上的修改只需要通过编辑该软件的配置文件即可,而不用通过繁杂的设置命令实现。
  由以上4点我们不难看出,Linux的哲学思想就是尽可能的由准确,可描述甚至说可量化的方式来将一切资源统一管理,可通过编程的方式快速大量的对计算机进行系统安装和配置,并且可以非常快速有效的对计算机所提供的服务进行管理,使Linux系统具备高稳定性、高运行效率、高管理便捷性,成为了服务器操作系统的第一选择。

  四、说明Linux系统上命令的使用各式;详细介绍ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用,并配置相应的实例来阐述。
答:Linux系统上的命令在使用时,一般遵循:
  COMMAND [OPTIONS] [ARGUMENTS]
  其中,COMMAND就是命令;
  OPTIONS是选项,用来对命令运行过程中做一些功能上的修正,比如说可以对命令执行的结果进行排序等;
  ARGUMENTS是参数,用来对命令运行生效的对象做约束;
  接下来详解的介绍一下在第一周学习到的命令:
  ifconfig:
  这个命令主要是用来查看计算机的网络配置信息的

[root@localhost ~]# ifconfig
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.112  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::20c:29ff:fe64:982c  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:64:98:2c  txqueuelen 1000  (Ethernet)
        RX packets 223  bytes 19817 (19.3 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 92  bytes 12503 (12.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 0  (Local Loopback)
        RX packets 4  bytes 340 (340.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4  bytes 340 (340.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

  其中inet就是该设备eno16777736网络接口的ipv4地址

  echo:用法为
  echo [OPTIONS] [ARGUMENTS]
  这个命令主要是用来回显一些内容的,主要有两种用法,
  第一种是用来回显一些系统变量,通过输入一些系统变量作为参数,来得到具体变量的参数。

[root@localhost ~]# echo $SHELL
/bin/bash
[root@localhost ~]# echo $PWD
/root

  同时,echo命令还可以用来显示输入的文字,通过不同的选项来调整输入文字的显示方式
  如使用-e选项来开启控制符并使用\n使内容另起一行

[root@localhost ~]# echo "hello word"     
hello word
[root@localhost ~]# echo -e "hello \nword"
hello 
word

  tty:
  这个命令主要是用来显示虚拟终端的名称

[root@localhost ~]# tty
/dev/pts/0

  这表示这个终端为伪终端,编号为0
  相应的,终端分为物理终端、虚拟终端、串行终端和伪终端
  对应的文件路径分别为
  物理终端:/dev/console
  虚拟终端:/dev/tty# [1,6]
  串行终端:/dev/ttyS#
  伪终端:/dev/pts/#

  startx:
  这个命令是用来启动图形界面的(前提是该计算机安装了图形界面…)

  export:
  这个命令在视频教学中没有看到,有可能是看漏了…

  pwd:
  这个命令是显示当前的工作目录

[root@localhost pts]# pwd
/dev/pts

  history:
  这个命令也没有在视频中看到…

  shutdown:
  shutdown [OPTIONS] [[+]TIME]] [WALL]
  这个命令可以实现对计算机运行状态的控制,实现重启,关机等操作
  [OPTIONS]可以为
  -r 重启
  -h 关机
  -H 休眠
  -c 取消即将进行的操作
  –no-wall 不进行广播
  [[+]TIME]] 这里为执行shutdown命令的时间参数,可以设置该命令的执行时间,可以为HH:MM的方式选择具体时间,或者是+MM的方式设置延后多少分钟执行
  [WALL]这个参数是提示其他用户的,默认是对每一个连接的用户发送提示,如

 [root@localhost pts]# shutdown -r +10 "hello everyone"
Shutdown scheduled for Sun 2016-12-04 04:49:37 EST, use 'shutdown -c' to cancel.
[root@localhost pts]# 
Broadcast message from root@localhost (Sun 2016-12-04 04:39:37 EST):

hello everyone
The system is going down for reboot at Sun 2016-12-04 04:49:37 EST!

  这段代码会提示所有人在10分钟后设备会重启,并在默认的提示之前加上了一句“hello everyone”

[root@localhost pts]# shutdown -c --no-wall

  这段代码是取消刚刚的重启动作,并且不对其他人进行提示

[root@localhost pts]# shutdown -r --no-wall +10 "hello everyone" 
Shutdown scheduled for Sun 2016-12-04 04:50:12 EST, use 'shutdown -c' to cancel.

  这行代码是在10分钟后重启设备并不提示大家

[root@localhost pts]# shutdown -c 

Broadcast message from root@localhost (Sun 2016-12-04 04:40:24 EST):

The system shutdown has been cancelled at Sun 2016-12-04 04:41:24 EST!

  这行代码是取消了刚刚的重启动作,并广播给所有已连接的用户

  poweroff和reboot命令是相对shutdwon更明确的一种用法
  poweroff 相当于 shutdown -h
  reboot 相当于 shutdown -r

  hwclock:
  这个命令是来显示或设置硬件时间的,如果直接输入hwclock会显示当前的硬件时间

[root@localhost pts]# hwclock
Sun 04 Dec 2016 04:47:15 AM EST  -0.584773 seconds

  这个命令有一个符号链接:clock,可直接使用clock。
  使用hwclock命令可以使系统时间与硬件时间同步,具体为:
  -s systohw :将系统时间同步为硬件时间
  -w hwtosys:将硬件时间同步为系统时间

[root@localhost pts]# clock -w
[root@localhost pts]# clock
Sun 04 Dec 2016 05:02:54 AM EST  -0.161930 seconds

  date:
  这个命令是来显示或设置系统时间的,如果直接输入date会显示当前的系统时间

[root@localhost pts]# date
Sun Dec  4 05:04:27 EST 2016

  使用date命令将系统时间为指定时间的方式为:
  date [MMDDhhmm[[CC]YY][.ss]]
  MM代表月份、DD代表日期、hh代表小时、mm代表分钟,年和秒是可选项,年可以写后两位也默认世纪为当前世纪,如果填写则按照填写为准,秒默认为0,如果填写则按照填写为准
  比如,我们要将硬件时间调整为 1981年10月10日12:32分15秒,则命令如下:

[root@localhost pts]# date 101012321981.15
Sat Oct 10 12:32:15 EDT 1981

  同样的,我们可以使用hwclock/clock命令将系统时间调整为硬件时间

[root@localhost pts]# clock -s
[root@localhost pts]# date
Sun Dec  4 05:09:58 EST 2016

五、如何在Linux系统上获取命令的帮助信息,请详细列出,并描述man文档的章节是如何划分的。
答:1、使用命令自带的帮助文档,内嵌命令使用help COMMAND,外部命令使用COMMAND –help
  2、使用说明手册,命令man
  3、使用在线帮助文档,info COMMAND
  4、使用程序自带的帮助文档 /usr/share/doc/APP-VERSION
  5、官方文档 http://www.redhat.com/doc
  6、程序的官方文档,特别是大型程序,具体google
  7、搜索引擎查看其他使用者的心得。

六、请罗列Linux发行版的基础目录名称命名法则及功能规定。
这个 问题似乎前两天的课程没有涉及…

版权声明:本文为博主原创文章,未经博主允许不得转载。

Geekban极客班 C++ STL与泛型编程 第一周作业

特征Traits char szNames[]="abc"; std::size_t nLength=strlen(szNames); char* p=szNames; char* q=szNa...

Django 学习小组:博客开发实战第一周教程 —— 编写博客的 Model 与首页面

Django学习小组出品:一起来做一个简单的Blog第一周文档(教程) 本节是 django blog 项目的开篇,是 django 学习小组的集体学习成果。django学习小组是由我发起的一个促...

DAY10结业作业-简单的个人博客

效果图: 这里添加了固定背景,导航条,最新文章栏,首页有个人介绍 下面是HTML代码截图: 这是css代码截图:...
  • czqpkq
  • czqpkq
  • 2017年04月24日 16:01
  • 54

LVS架构实战

第十七次博客作业 1、结合图形描述LVS的工作原理;功用:根据请求报文的目标IP和目标port将其调度转发至后端的某主机上,作用在OSI网络模型中的第四层 LVS有四种集群类型,分别是:(一)lv...

脚本安装LNMP架构

1、源码编译安装LNMP架构环境;试验环境: nginx 主机IP:192.168.23.200 php-fpm 主机IP:192.168.23.201 mysql 主机IP:192.168.23....
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:第一周博客作业
举报原因:
原因补充:

(最多只允许输入30个字)