标签:建立 gen tle 存储 内存 suse 选择 gnu 编程
计算机系统计算机硬件
计算机(Computer):俗称电脑,是一种能接收和存储信息,并按照存储在其内部的程序对海量数据进行自动、高速地处理,然后把处理结果输出的现代化智能电子设备
发展历史:
第一代计算机(1946-1957)电子管时代
第二代计算机(1958-1964)晶体管时代
第三代计算机(1965-1970) 集成电路时代
第四代计算机(1971以后) 大规模集成电路时代
1946年,世界上第一台计算机ENIAC(electronic numerical integrator and calculator)在美国宾州大学诞生,是美国奥伯丁武器试验场为了满足计算弹道需要而研制成的。使用了17468只电子管,占地170平方米,重达30吨,耗电174千瓦,耗资40多万美元。每秒可进行5000次加法或减法运算
CPU
主频:主频是CPU的时钟频率(CPU Clock Speed),是CPU运算时的工作的频率(1秒内发生的同步脉冲数)的简称。单位是Hz。一般说来,主频越高,CPU的速度越快,由于内部结构不同,并非所有的时钟频率相同的CPU的性能都一样
外频:系统总线的工作频率,CPU与外部(主板芯片组)交换数据、指令的工作时钟频率
倍频:倍频则是指CPU外频与主频相差的倍数
三者关系是:主频=外频x倍频
高速缓存(cache):高速交换的存储器。CPU缓存分为一级,二级,三级缓存,即L1,L2,L3
内存总线速度(Memory-Bus Speed): 一般等同于CPU的外频,指CPU与二级(L2)高速缓存和内存之间的通信速度
地址总线宽度:决定了CPU可以访问的物理地址空间
阵列卡
Raid卡:
用来实现RAID的建立和重建,检测和修复多位错误,错误磁盘自动检测等功能。RAID芯片使CPU的资源得以释放
阵列卡(RAID卡)的作用
阵列卡把若干硬盘驱动器按照一定要求组成一个整体、由阵列控制器管理的系统。
阵列卡用来提高磁盘子系统的性能及可靠性
阵列卡参数
支持的RAID级别
阵列卡缓存
电池保护
计算机硬件组成部分
服务器
服务器Server是计算机的一种,是网络中为客户端计算机提供各种服务的高性能的计算机,服务器在网络操作系统的控制下,将与其相连的硬盘、磁带、打印机及昂贵的专用通讯设备提供给网络上的客户站点共享,也能为网络用户提供集中计算、信息发布及数据管理等服务
服务器按应用功能可分为:
Web服务器、数据库服务器、文件服务器、中间件应用服务器、日志服务器、监控服务器,程序版本控制服务器、虚拟机服务器、邮件服务器、打印服务器、域控制服务器、多媒体服务器、通讯服务器、ERP服务器等
服务器按外形分类:
塔式服务器、机架式服务器、刀片式服务器
服务器分类
按照CPU体系架构来区分,服务器主要分为两类:
非x86服务器:使用RISC(精简指令集)或EPIC(并行指令代码)处理器,并且主要采用UNIX和其它专用操作系统的服务器,指令系统相对简单,它只要求硬件执行很有限且最常用的那部分执令,CPU主要有Compaq的Alpha、HP的PA-RISC、IBM的Power PC、MIPS的MIPS和SUN的Sparc、Intel研发的EPIC安腾处理器等。这种服务器价格昂贵,体系封闭,但是稳定性好,性能强,主要用在金融、电信等大型企业的核心系统
x86服务器:又称CISC(复杂指令集)架构服务器,即通常所讲的PC服务器,它是基于PC机体系结构,使用Intel或其它兼容x86指令集的处理器芯片的服务器。目前主要为intel的Xeon E3,E5,E7系列,价格相对便宜、兼容性好、稳定性较差、安全性不算太高
存储基础知识---存储网络
存储网络:
DAS-----直接连接存储(Direct Attached Storage)
NAS-----网络连接存储(Network Attached Storage)
SAN-----存储区域网络(Storage Area Networks)
直接存储(Direct Attached Storage)。
存储设备与主机的紧密相连
?管理成本较低,实施简单
?储时直接依附在服务器上,因此存储共享受到限制
?CPU必须同时完成磁盘存取和应用运行的双重任务,所以不利于CPU的指令周期的优化,增加系统负担
网络连接存储(Network Attached Storage):
通过局域网在多个文件服务器之间实现了互联,基于文件的协议(NFS、SMB/CIFS ),实现文件共享
?集中管理数据,从而释放带宽、提高性能
?可提供跨平台文件共享功能
?可靠性较差,适用于局域网或较小的网络
存储区域网络(Storage Area Networks,SAN)
利用高速的光纤网络链接服务器与存储设备,基于SCSI,IP,ATM等多种高级协议,实现存储共享
?服务器跟储存装置两者各司其职
?利用光纤信道来传输数据﹐以达到一个服务器与储存装置之间多对多的高效能、高稳定度的存储环境
?实施复杂,管理成本高
操作系统
OS: Operating System,通用目的的软件程序
硬件驱动
进程管理
内存管理
网络管理
安全管理
文件管理
OS分类:
服务器OS:RHEL, CentOS,WindowsServer,AIX
桌面OS:Windows 10,Windows 7,Mac OS,Fedora
移动设备OS:Andriod,IOS,YunOS
开发接口标准
ABI: Application Binary Interface
ABI描述了应用程序与OS之间的底层接口,允许编译好的目标代码在使用兼容ABI的系统中无需改动就能运行
API:Application Programming Interface
API定义了源代码和库之间的接口,因此同样的源代码可以在支持这个API的任何系统中编译
POSIX: Portable Operating System Interface
IEEE在操作系统上定义的一系列API标准
POSIX兼容的程序可在其它POSIX操作系统编译执行
运行程序格式:
Windows: EXE, .dll(dynamic link library),.lib
Linux: ELF, .so(shared object), .a
Library function和system call
用户空间:User space
用户程序的运行空间。为了安全,它们是隔离的,即使用户的程序崩溃,内核也不受影响
只能执行简单的运算,不能直接调用系统资源,必须通过系统接口(system call),才能向内核发出指令
内核空间:Kernel space
是Linux 内核的运行空间
可以执行任意命令,调用系统的一切资源
示例:
str= “www.baidu.com" // 用户空间
x = x + 100 // 用户空间
file.write(str) // 切换到内核空间
y = x + 200 // 切换回用户空间
第一行和第二行都是简单的赋值运算,在User space 执行。第三行需要写入文件,就要切换到Kernel space,因为用户不能直接写文件,必须通过内核安排。第四行又是赋值运算,就切换回User space
用户和内核空间
编程语言
低级语言
机器语言:0和1
汇编语言:和机器语言一一对应,与硬件相关的特有代码、驱动程序开发
中级语言:C
系统级应用、驱动程序
高级语言:java,Objective-C,C#,python,php,go
应用级程序开发
兼容分时系统
兼容分时系统Multics
为了进一步强化大型主机的功能,让主机的资源可以提供更多的使用者来利用,所以在1964年,由贝尔实验室(Bell)、麻省理工学院(MIT)及奇异公司(GE美国通用电气公司)共同发起了Multics(多路信息计算系统)的计划,Multics计划的目的是让大型主机可以同时支持300个以上的终端机连线使用。不过,到了1969年前后,由于计划进度缓慢,资金也短缺,所以该计划虽然继续在研究,但最终贝尔实验室还是选择了退出
GNU
?GNU(GNU is Not Unix)
?1984年由Richard Stallman发起并创建
?目标是编写大量兼容于Unix系统的自由软件
?官方网站:http://www.gnu.org
?GPL(GNU General Public License)
?自由软件基金会:Free Software Foundation
?允许用户任意复制、传递、修改及再发布
?基于自由软件修改再次发布的软件,仍需遵守GPL
?LGPL(Lesser General Public License)
?LGPL相对于GPL较为宽松,允许不公开全部源代码
?GNU操作系统:HurdHirdof Unix-Replacing Daemons
Linux发行版
slackware:SUSE Linux Enterprise Server (SLES)
OpenSuse桌面
debian:ubuntu,mint
redhat:RHEL: RedHatEnterprise Linux
每18个月发行一个新版本
CentOS:兼容RHEL的格式
中标麒麟:中标软件
Fedora:每6个月发行一个新版本
ArchLinux:轻量简洁
Gentoo:极致性能,不提供传统意义的安装程序
LFS: Linux From scratch 自制Linux
Android: kernel+busybox(工具集)+java虚拟机
Linux分支参考网站:
http://www.mindpin.com/d3js-demo/linux/
Linux内核
开源协议
世界上的开源许可证,大概有上百种
GPLv2, GPLv3, LGPL(lesser) :通用公共许可copyleft
Apache: apache
BSD: bsd
Mozilla
Apache
MIT
Linux哲学思想
一切都是一个文件(包括硬件)
小型,单一用途的程序
链接程序,共同完成复杂的任务
避免令人困惑的用户界面
配置数据存储在文本中
标签:建立 gen tle 存储 内存 suse 选择 gnu 编程
原文地址:http://blog.51cto.com/13854765/2147024