Bit 位
1字节=8位
Byte 字节
1K=1024
1M=1024K
1G=1024M
1T=1024G
1P=1024
1E
1Z
.
.
.
二进制:逢二进一
01
八进制:逢八进一
01234567
十进制:逢十进一
0123456789
十六进制:
0123456789ABCDEF
二进制:00000000 00000001 00000010 00000011 00000100 00000101
八进制: 0 1 2 3 4 5
十进制: 0 1 2 3 4 5
十六进制: 0 1 2 3 4 5
00000110 00000111 00001000 00001001 00001010 00001011
6 7 10 11 12 13
6 7 8 9 10 11
7 A B C D
00001110 00001111 ……
14 15 ……
12 13 ……
E F ……
1946年数学家冯诺依曼提出:运算器、控制器、存储器、输出设备、输入设备(计算机处理数据是基于二进制的)。主存储器=加工厂;辅助存储器=仓库
摩尔定律=被打脸(被牙膏厂英特尔打破)
冯诺依曼体系可能即将被打破(量子计算机、神经芯片计算机)
巨型计算机
大型计算机
小型计算机
微型计算机
Server/client=服务端/客户端
服务器功能分类:
Web服务器(apache、nginx)、数据库服务器(mysql、Oracle)、文件服务器(ftp、nfs)、日志服务器等
服务器外形分类:
塔式服务器、机架式服务器、刀片服务器
服务器硬件–CPU
主频:CPU的工作频率,主频=外频x倍频
外频:CPU与主板交换数据的工作频率
倍频:CPU外频与主频相差的倍数
高速缓存:高速交换的存储器
服务器CPU体系架构区分:
非x86服务器:使用RISC(精简指令集)或EPIC(并行指令代码)处理器并且主要采用Unix和其它专用操作系统
X86服务器:又称CISC(复杂指令集)架构服务器
服务器硬件—主板
计算机最基础的也是最重要的部位之一
硬件—内存
计算机中所有程序的运行都是在内存中进行的,因此内存的性能对计算机影响很大
内存(RAM)断电丢失
外存(R0M)断电不丢失
内存带宽=内存总线x数据总线位数/8
在线备用内存技术
内存镜像
服务器硬件—硬盘
机械硬盘结构
存储介质—盘片
读写头—磁头
马达 5400RPM、7200RPM、10000RPM
硬盘基本参数:
容量
转速
传输速率
缓存
硬盘接口类型:
IDE接口
SCSI接口
SATA接口(主流)
SAS接口(主流)
固态硬盘(SSD)
如果CPU有每秒处理1000个服务请求的能力,各种总线的负载
能力能达到500个,但网卡只能接受200个请求,而硬盘只能负
担150个的话,那这台服务器得处理能力只能是150个请求/秒,
有85%的处理器计算能力浪费了
服务器热插拔技术:
称为热交换技术
常见热插拔设备:硬盘、电源、风扇
存储基础知识—存储网络
DAS:
直连存储,基于数据块
NAS:
网络连接存储
基于文件,ftp、nfs、网络共享等
SAN:存储区域网络
基于数据块,又分为IP-SAN(基于以太网)和FC-SAN(基于光纤网络),IP-SAN走ISCSI协议,FC-SAN走FC协议
操作系统
OS:通用目的的软件程序
服务器OS:RHEL、CentOS、Windows Server、AIX
桌面OS:Windows 10、Windows 7、Mac OS
移动设备OS:Android、iOS、YunOS
开发接口标准
ABI:操作系统与应用软件交互的接口
API:开发编译交互源代码和库的接口
POSIX:API接口的相关协议和标准(IEEE)
运行程序格式:
Windows:EXE、.dll、.lib
Linux:ELF、.os、.a
Linux相关命令
strace 查看system call
ltrace 查看库(library)调用
编程语言
低级语言
机器语言:0和1
汇编语言:和机器语言一一对应
中级语言:C
系统级应用、驱动程序
高级语言:Java、C#、Python、PHP、go
应用级程序开发
Unix历史
先有兼容分时系统,为了进一步强化大型主机的功能,让主机的资源可以提供更多的使用者来利用,所以在1964年, 由贝尔实验室(Bell)、麻省理工学院(MIT)及奇异公司(GE美国通用电气公司)共同发起了Multics(多路信息计算系统)的计划, Multics计划
的目的是让大型主机可以同时支持300个以上的终端机连线使用。不过,到了
1969年前后,由于计划进度缓慢,资金也短缺,所以该计划虽然继续在研究,
但最终贝尔实验室还是选择了退出 。
Unix的传奇诞生
Ken Thompson:一切为了游戏。没错就是为了玩这款为Multics系统开发的游戏“star travel”他编写了一套简化的系统——Unix
1966年从加州大学伯克利分校毕业的Ken Thompson加入了贝尔实验室。参与
了Multics系统的研发。他基于Multics开发了“star travel” 游戏。不幸的是,
1969年由于贝尔实验室退出Multics项目,这同时意味着Ken将没有机器可以再
玩这个游戏了。面对此情此景,Ken作为一个创造者的本性立即体现了出来,于
是他决定自己写一个操作系统来满足他玩游戏的需要,Ken找到了一台废弃已久
的老式PDP-7,并在这台机器上重写了他的游戏。在这个过程中,Ken有了一个
主意,要开发一个全新的操作系统。利用PDP-7上的汇编语言,Ken只花了一个
月就编写完了操作系统的内核,在这个一个月中,他一周一个内核,一个文件
系统,一个编辑器和一个编译程序的完成。
之后他的系统和游戏流传于各个大学,在后续的一段时间和他的小伙伴们进行了重新编译完善流传之后具有了商业价值被贝尔实验室收回版权,又由愤怒的后起之秀Richard Stallman发起了自由软件GNU(GNU is Not Unix)对自由软件的定义和规范也促使了Linux的发展和成长。
Linux起源
1991年的10月5日,Torvalds在comp.os.minix新闻组上发布消息,正式向外宣布他自行编写的完全自由免费的内核诞生(Freeminix-like kernel sources for 386-AT)———FREAX
官网:www.kernel.org
Linux操作系统:
完整的类Unix操作系统
Linux内核+GNU工具
Linux发行版本
slackware:SUSE Linux Enterprise Server (SLES)
OpenSuse桌面
debian: ubuntu,mint
redhat: RHEL: RedHat Enterprise Linux
每18个月发行一个新版本
CentOS:兼容RHEL的格式
中标麒麟:中标软件
Fedora:每6个月发行一个新版本
ArchLinux:轻量简洁
Gentoo:极致性能,不提供传统意义的安装程序
LFS: Linux From scratch 自制Linux
Android: kernel+busybox(工具集)+java虚拟机
Linux分支参考网站:http://futurist.se/gldt/
LFS:自制Linux(可以体验一下自己制作Linux的乐趣,一般能成功的都是小有所成)
Linux内核组成
主版本号
此版本号
末版本号
编译版本号
厂商版本号
开源:
Open Source软件和源代码提供给所有人
软件分类:
商业
共享
自由free
开源协议
Linux哲学思想