马哥教育网络班22期第1周课程练习
第一部分,计算机构成和功能简述
一、计算机体系
从最初的计算机ENIAC到当今时代的计算机都采用冯●诺依曼体系结构,该结构宗旨为:数字计算机的数制采用二进制;计算机应该按照程序顺序执行。
二、计算机硬件组成
计算机基本硬件由以下组件构成:
CPU:
运算器:负责运算
控制器:负责控制各部件
寄存器:暂存指令,以方便运算器调用
缓存:复制内存信息,更快速的连接CPU与内存而存在的中间媒介
存储器:
内存(RAM:Random Access Memory),每8bit组成一个Bytes,称为一个cell,作为最小存储单元。内存的每一个cell都有一个数字编值,由于冯诺依曼结构计算机只支持二进制,导致该编值只能是平面编值。因此对于32位CPU,只有2^32个二进制标识,因此只能识别3.25-3.75G的内存
I/O设备:
输入设备:给计算机下指令,提供数据
输出设备:输出根据指令加工后的数据
三、计算机软件:
软件原理:
CPU能够支持的所有指令的集合叫做“指令集”,指令集分为“普通指令”和“特殊指令”。运算器和控制器有各自的指令集。
CPU从内存中取得指令和数据进行运算
软件的类别:
系统软件:操作系统、驱动软件
应用软件:解决具体问题
软件中多条指令的控制逻辑:
顺序执行:依次执行
循环执行:循环执行N次
选择执行:仅执行其中一个分支
批处理系统原理:
单任务计算机:早期计算机在某一时刻只能运行一个程序
多任务计算机:通过虚拟化物理资源并分割/分片给多个应用程序,并且Monitor Program监控多个任务规范运行,从而更高效的利用计算机资源
接口的概念:
软件运行原理:用户输入指令和数据–>应用程序–>库–>操作系统–>硬件
–>操作系统–>硬件
API:Application Program Interface,面向程序员开发的编程接口
POSIX:Portable Operating System,遵循POSIX规范的AIP可以在遵守POSIX规范的系统上进行编译
ABI:Application Binary Interface,面向运行应用程序的系统接口
四、操作系统:
操作系统的功能:
驱动程序、进程管理、系统安全、网络功能、内存管理、文件管理……
Kernel概念:操作系统的一部分。硬件和应用软件间的中间件,提供监控进程、虚拟化物理资源、驱动硬件等功能。
操作系统交互接口:
GUI (Graphic User Interface)图形用户接口:Gnome(C,gtk),KDE(C++,qt)
CLI (Command Line Interface)命令行接口:bash,zsh,sh,tcsh,ksh
第二部分,Linux常用发行版简述
一、Linux内核版本:
Linux内核版本号由3个数字组成,如:CentOS 6.5的kernel是2.6.32-431
其中第一组数字2对应kernel的主版本;
第二组数字6对应次版本,该数字为奇数时表示为开发版,数字为偶数时表示为稳定版;
第三组数字32表示修改的次数
第四组数字431表示微调次数
系统内核版本可通过unmae -r命令查询如:
[root@zabbix-test-01 ~]# uname -r
2.6.32-431.el6.x86_64
其中el6表示该内核是为enterprise linux 6特别调校过的
二、Linux常用发行版:
Debin:开源类Unix,非常稳定的系统,核心非常小,但是各类文档和技术资料都比其他发行版少,所以只有需要为一个系统提供特殊服务时才会用到。
Ubuntu:Debin下的一个分支,desktop版用户界面非常漂亮,server版还很小众但是web安全性和稳定性很出色。
Mint:ubuntu的下游版本
RedHat:RHEL是标准的企业发行版,系统稳定,但是5年更新一次大版本要比常用软件更新的慢。
CentOS:因为是RHEL的社区重新发布版,所以一直比RHEL发行慢一拍,不提供商业支持,体积比debian大一点。
Fedroa Core:多社区开源版本,打包了更多的软件包。
Slackware:非常短命的发行版
S.u.S.E:最早为德国人专门开发的系统,后来被Attachmate收购,对windows的支持很好
OpenSUSE:SuSE的公众测试版,开放了源代码。
第三部分,Linux的哲学思想
一、一切皆文件:把所有资源抽象为文件行为,包括硬件设备、通信接口。这使得Linux系统可以很清晰的占线出来,没有封闭操作。
二、单一目的的小程序,组合小程序完成复杂任务:注重效率,排查简单。
三、文本文件保存配置信息:简化和统一程序管理操作
四、尽量避免捕获用户接口:易于变成的方式实现自动化任务
第四部分,Linux系统命令
一、命令格式
Prompt:命令提示符
root用户提示符 :#
非root用户提示符:$
COMMAND Options Arguments
COMMAND:命令名称如awk
Options:定义命令的执行特性,可以有长短两种选项
长选项:用–引导,后跟完整单词,如–field-separator
短选项:用-引导,后跟单个字符,如-F
Arguments:表示命令的作用对象,如 : '{ print $1 }' /etc/passwd
则命令:awk -F : '{ print $1 }' /etc/passwd的含义为使用命令awk,并且将:作为分割符,输出/etc/passwd文件夹中数据被分割的第一个字段。
二、常用命令解释
ifconfig:查看活动的接口信息如IP地址等,类似ip addr list,如下:
[root@zabbix-test-01 ~]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:50:56:A8:51:F3
inet addr:192.168.8.235 Bcast:192.168.8.255 Mask:255.255.255.0
inet6 addr: fe80::250:56ff:fea8:51f3/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:190321 errors:0 dropped:0 overruns:0 frame:0
TX packets:102821 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:20816760 (19.8 MiB) TX bytes:10592644 (10.1 MiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:4325 errors:0 dropped:0 overruns:0 frame:0
TX packets:4325 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:491257 (479.7 KiB) TX bytes:491257 (479.7 KiB)
echo:回显,如下:
[root@zabbix-test-01 ~]# echo hello world
hello world
tty:可以查看当前连接的终端,如下显示当前终端界面属于第一个逻辑终端(伪终端)
[root@zabbix-test-01 ~]# tty
/dev/pts/1
startx:启动图形界面命令,实际上是x window的脚本,后台为init。
export:
pwd:
history:
shutdown:
poweroff:断电关闭系统
reboot:重启系统
hwclock:
date:
三、获得命令的帮助信息
COMMAND –help
man COMMAND
四、基础目录命令法则及功能规定
思考:文件是什么?众多文件如何有效的组织起来?
文件存放的两种方式:平面化存放和结构化存放
目录:路径映射;
文件:存储空间存储的一段流式数据,对数据可以做到按名存取
文件系统:层级结构;有索引;倒置的树状结构,所有的文件都从根起始
/:原始起点
/二级目录/三级目录 :最左侧的/表示根目录,其它的/表示路径分割符
linux的路径分割符是/
windows的路径分隔符是\
文件的路径表示:
绝对路径:从根开始表示出的路径,如下:
/etc/passwd
最右侧的文件或目录名称为basename,最左侧的路径为dirname
basename /PATH/TO/SOMEFILE
SOMEFILE
dirname /PATH/TO/SOMEFILE
/PATH/TO
相对路径:从当前位置开始表示出的路径
文件名使用法则:
文件名严格区分大小写;
目录也是文件,在同一路径下,两个文件不能同名;
文件名支持使用除/意外的任意字符;
文件名最长不超过255个字符
用户家目录:home
用户的起始目录:普通用户管理文件的位置
五、Linux命令帮助信息
COMMAND –help #查询命令所支持的参数的说明
help COMMAND #查询命令的简介和使用方法
man COMMAND #查看命令的正式文档
man命令介绍:
查询man文档所在地可用命令manpath
[root@localhost ~]# manpath
/usr/local/share/man:/usr/share/man/overrides:/usr/share/man
man文档分类:
1 Executable programs or shell commands
2 System calls (functions provided by the kernel)
3 Library calls (functions within program libraries)
4 Special files (usually found in /dev)
5 File formats and conventions eg /etc/passwd
6 Games
7 Miscellaneous (including macro packages and conventions), e.g. man(7), groff(7)
8 System administration commands (usually only for root)
9 Kernel routines [Non standard]
如ps命令为分类1,ifconfig命令为分类8
man文档格式:
NAME命令名
SYNOPSIS简述
NOTE笔记
DESCRIPTION命令描述
OPTIONS命令选型
EXAMPLES样例
NOTES注释
FILE所在目录
BUGS
SEE ALSO参阅
AUTHORS作者
原创文章,作者:mwuyang,如若转载,请注明出处:http://www.178linux.com/34589
评论列表(1条)
写的很好,排版还可以在漂亮一点,加油,是不是没写完?