1、描述计算机的组成及其功能。
组成:
输入设备:(鼠标,键盘)将程序、命令、文字、字符、控制命令、数据输入到计算机中,并将信息转换成数字形成的编码,二进制代码(1,0).
输出设备:(显示器,打印机)将计算机的中间结果或最后结果,数据或文字信息输出显示。
存储器:存储程序和数据,并能在计算机运行过程中,高速,自动完成数据或数据的存取,俗称内存。
运算器或算数逻辑单元:CPU组成部分之一,主要功能是对数据进行各种运算,基本的加减乘除,还可以进行逻辑处理,即“与”“或”“非”以及数据的比较等操作。
控制器:整个计算机系统的控制中心,它指挥计算机各部分协调地工作,保证计算机按照预先规定的目标和步骤有条不紊地进行操作及处理。 控制器从存储 器中逐条取出指令,分析每条指令规定的是什么操作以及所需数据的存放位置等,然后根据分析的结果向计算机其它部分发出控制信号,统一指挥整 个计算机完成指令所规定的操作。
2、描述内核功能以及作用
Linux内核:
管理进程:
内核负责创建和销毁进程, 并处理它们与外部世界的联系(输入和输出),不同进程间通讯(通过信号,管道,或者进程间通讯原语)对整个系统功能来说是基本的,也由内核处理。 另外, 调度器, 控制进程如何共享CPU,是进程管理的一部分。更通常地,内核的进程管理活动实现了多个进程在一个单个或者几个CPU 之上的抽象。
管理内存:
计算机的内存是主要的资源, 处理它所用的策略对系统性能是至关重要的。内核为所有进程的每一个都在有限的可用资源上建立了一个虚拟地址空间。内核的不同部分与内存管理子系统通过一套函数调用交互,从简单的malloc/free对到更多更复杂的功能。
文件系统:
Unix 在很大程度上基于文件系统的概念;几乎Unix中的任何东西都可看作一个文件。内核在非结构化的硬件之上建立了一个结构化的文件系统,结果是文件的抽象非常多地在整个系统中应用。另外,Linux 支持多个文件系统类型,就是说,物理介质上不同的数据组织方式。例如,磁盘可被格式化成标准Linux的ext3文件系统,普遍使用的FAT文件系统,或者其他几个文件系统。
设备控制:
几乎每个系统操作终都映射到一个物理设备上,除了处理器,内存和非常少的别的实体之外,全部中的任何设备控制操作都由特定于要寻址的设备相关的代码来进行。这些代码称为设备驱动。内核中必须嵌入系统中出现的每个外设的驱动,从硬盘驱动到键盘和磁带驱动器
网络管理:
网络必须由操作系统来管理,因为大部分网络操作不是特定于某一个进程: 进入系统的报文是异步事件。报文在某一个进程接手之前必须被收集,识别,分发,系统负责在程序和网络接口之间递送数据报文,它必须根据程序的网络活动来控制程序的执行。另外,所有的路由和地址解析问题都在内核中实现。
3、按系列罗列常见Linux的发行版,并描述不同发行版之间的联系与区别。
1.基于Dpkg (Debian系)。是一种强调使用自由软件的发行版。没商业公司支持,使用上对技术要求高。
发行版有:
Ubuntu:知名Linux发行版之一,由Canonical有限公司赞助,基于Debian,使用自己的软件包库,与Debian的有所不同,旨在开发出更加友好的桌面。
Knoppix:基于Debian GNU/Linux,桌面系统主要采用KDE,第一张Debian的自启动运行光盘。包含的软件非常多,有很好的硬件支持,桌面与笔记本电脑的集成也很出色。
Mint:基于Ubuntu,继承了Ubuntu的众多优点,同时也在Ubuntu的基础上加入很多自己优秀的特性,界面友好和美丽。
2.基于RPM (Red Hat系),美国和 中国用的最多一个系列,按提供服务响应速度快慢收费。
发行版有:
Fedora:可用作工作站、桌面以及服务器,由红帽公司及其社区开发。
CentOS(Community Enterprise Operating System)是Linux发行版之一,它是来自于Red Hat EnterpriseLinux依照开放源代码规定发布的源代码所编译而成。
centos的出现,传说是红帽拿开源软件对消费者作恶的收费引起的,看不惯renhat的收费行为。于是是把RedHatEnterpriseLinux重新编译,去掉红帽的LOGO。功能稳定性和红帽的一样,且免费,在我们目前在中国内的企业用得最多。
3.Slackware系
发行版有:
SUSE,是Linux操作系统其中一个发行版,也是德国的一个发行版。SUSE属于Novell旗下的业务,它同时亦是DesktopLinuxConsortium的发起成员之一。界面华丽,照顾欧洲人使用习惯。
openSUSE:openSUSE Project由SUSE公司赞助,开发和维护着SUSE Linux发行版部件。openSUSE是SUSE Linux Professional的接替者,是SUSE社区版。
4、描述常见的开源协议(GPL,LGPL, BSD,Apache等)以及开源协议的区别
经过Open Source Initiative组织通过批准的开源协议https://opensource.org/licenses/alphabetical
BSD:
(original BSD license、FreeBSD license、Original BSD license)协议:BSD开源协议是一个给于使用者很大自由的协议。基本上使用者可以”为所欲为”,可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。但”为所欲为”的前提当你发布使用了BSD协议的代码,或则以BSD协议代码为基础做二次开发自己的产品时,需要满足三个条件:
1,如果再发布的产品中包含源代码,则在源代码中必须带有原来代码中的BSD协议。
2,如果再发布的只是二进制类库/软件,则需要在类库/软件的文档和版权声明中包含原来代码中的BSD协议。
3,不可以用开源代码的作者/机构名字和原来产品的名字做市场推广。
BSD 代码鼓励代码共享,但需要尊重代码作者的著作权。BSD由于允许使用者修改和重新发布代码,也允许使用或在 BSD代码上开发商业软件发布和销售,因此是对商业集成很友好的协议。而很多的公司企业在选用开源产品的时候都首选BSD协议,因为可以完全控制这些第三方的代码,在必要的时候可以修改或者二次开发。
GPL:
GPL协议和BSD, Apache Licence等鼓励代码重用的许可很不一样。GPL的出发点是代码的开源/免费使用和引用/修改/衍生代码的开源/免费使用,但不允许修改后和衍生的代码做为闭源的商业软件发布和销售。这也就是为什么我们能用免费的各种linux,包括商业公司的linux和linux上各种各样的由个人,组织,以及商业软件公司开发的免费软件了。
GPL协议的主要内容是只要在一个软件中使用(”使用”指类库引用,修改后的代码或者衍生代码)GPL 协议的产品,则该软件产品必须也采用GPL协议,既必须也是开源和免费。这就是所谓的”传染性”。GPL协议的产品作为一个单独的产品使用没有任何问题,还可以享受免费的优势。
由于GPL严格要求使用了GPL类库的软件产品必须使用GPL协议,对于使用GPL协议的开源代码,商业软件或者对代码有保密要求的部门就不适合集成/采用作为类库和二次开发的基础。
其它细节如再发布的时候需要伴随GPL协议等和BSD/Apache等类似。
LGPL:
LGPL是GPL的一个为主要为类库使用设计的开源协议。和GPL要求任何使用/修改/衍生之GPL类库的的软件必须采用GPL协议不同。LGPL允许商业软件通过类库引用(link)方式使用LGPL类库而不需要开源商业软件的代码。这使得采用LGPL协议的开源代码可以被商业软件作为类库引用并发布和销售。
但是如果修改LGPL协议的代码或者衍生,则所有修改的代码,涉及修改部分的额外代码和衍生的代码都必须采用LGPL协议。因此LGPL协议的开源代码很适合作为第三方类库被商业软件引用,但不适合希望以LGPL协议代码为基础,通过修改和衍生的方式做二次开发的商业软件采用。
GPL/LGPL都保障原作者的知识产权,避免有人利用开源代码复制并开发类似的产品
Apache:
Apache Licence是著名的非盈利开源组织Apache采用的协议。该协议和BSD类似,同样鼓励代码共享和尊重原作者的著作权,同样允许代码修改,再发布(作为开源或商业软件)。需要满足的条件也和BSD类似:
1,需要给代码的用户一份Apache Licence
2,如果你修改了代码,需要再被修改的文件中说明。
3,在延伸的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议,商标,专利声明和其他原来作者规定需要包含的说明。
4,如果再发布的产品中包含一个Notice文件,则在Notice文件中需要带有Apache Licence。你可以在Notice中增加自己的许可,但不可以表现为对Apache Licence构成更改。
Apache Licence也是对商业应用友好的许可。使用者也可以在需要的时候修改代码来满足需要并作为开源或商业产品发布/销售。
5、描述Linux的哲学思想,并按照自己的理解对其进行解释性描述。
1.一切皆文件。
几乎把所有的资源系统抽象为文件形式:包括硬件设备,甚至通信接口等,
作用:提高资源管理效率。
如:
物理终端:/dev/console
虚拟终端:/dev/tty#(#为1~6)
串行终端:/dev/ttyS#
伪终端:/dev/pts/#
2.小型,单一用途的程序:
一个程序只做一件事,并且做好;组合小程序完成复杂任务。
作用:程序分工明确,运行后方便进程管理。程序代码也轻量化,高效,容易修复错误。
3.链接程序,共同完成复杂的任务。
写脚本,用于复杂的任务。
4.避免令人困惑的用户界面。
都是用于字符界面而不用图形界面。
5.配置数据存储在文本中。
linux所有的配置文件都存放在文本配置文件当中,无论什么配置修改都只需修改其配置文件即可,配置文件时文本形式的只需任意一款文本编辑器修改即可而不是类似于windows那样将保存在注册表中,并且windows的注册表需要专门的二进制或十六进制的编辑器才可编辑,修改比较复杂
6、描述linux目录结构以及目录结构命名规定。
/bin 存放系统命令
/boot 存放着系统的启动文件和内核
/dev 设备文件主目录
/proc 系统进程和系统硬件信息
/etc 系统主配置文件主目录
/var 系统配置文件主目录
var/log/message日志信息,按周自动轮询
/home 普通用户的家目录
/lib&lib64 存放必要的运行库
/mnt 一般都是用于临时挂在存储设备的挂载目录。
/proc 存放存储进程和系统信息
/root 超级用户的家目录
/sbin 大多涉及系统管理的命令的存放,是超级权限用户root可执行命令存放地,这个目录
/tmp 存放临时文件;
/var 存放系统日志和缓存日志的目录
/usr 存放应用程序,命令程序文件,程序库,手册,和其他文档
/usr/local 自定义存放目录
/backup 备份文件目录
------
1、搭建时间服务器,日志服务器并简述sudo安全切换。
? 后期更新
2、详解nginx模块使用方法
?后期更新