Linux内核简介

Linux内核简介——http://oss.org.cn/kernel-book/index.htm

Unix——一个强大健壮稳定的操作系统。
特点:简洁(系统调用少);一切皆为文件的设计哲学;C语言编写,移植性好;简单稳定的进程间原语。
Unix已经成为一个支持多任务、多线程、虚拟内存、换页、动态链接和TCP/IP网络的现代操作系统。

Linux内核版本
稳定版和处于开发中的版本(开发版);如2.6.0内核,主版本号.从版本号.修订版本号
内核没有内存保护机制,内核非法访问内存的结果很难控制,内核的内存都不分页。
内核并不能完美地支持浮点操作。
内核栈,很小,长度固定,不能动态增长。32位机器为8K,64位为16K
Linux内核是可以抢占的。中断时异步到来的。Linux内核支持多处理器并发处理。
解决竞争的办法是自旋锁和信号量。
Linux内核必须保持可移植性。

内核开发特点
1)内核不能访问C库,使用内核实现<linux/*.h>,printk函数代替printf
2)内核编程必须使用GNU C,
支持内联函数,static inline type func(。。。),必须使用static修饰
支持内联汇编,C函数中嵌入汇编指令
分支声明优化,unlikely(foo)——foo通常不为0和likely(foo)——foo通常为0
3) 内核编程时缺乏向用户空间那样的内存保护机制
4)内核编程浮点数很难使用,不要轻易使用
5)内核只有一个很小的定长堆栈,32位8KB,64位16KB
6)内核支持异步中断,抢占和SMP,因此必须时刻注意同步和并发。解决竞争的办法是自旋锁和信号量。
7)要考虑可移植性的重要性


进程上下文:运行于内核空间,系统调用陷入内核
中断上下文:运行于内核空间,处理异步中断信号产生的中断;当硬件设备想和系统通信时,它首先
发出一个一步中断喜好打断内核正在执行的工作。中断-中断号-中断服务程序
当发生进程调度时,进行进程切换就是上下文切换(context switch)


处理器总处于以下状态中的一种:
1.内核态,运行于进程上下文,内核代表进程运行于内核空间;
2.内核态,运行于中断上下文,内核代表硬件运行于内核空间;
3.用户态,运行于用户空间

计算机体系结构
AMD x86-64=Intel 64:

  “x86-64”,有时会简称为“x64”,是64位微处理器架构及其相应指令集的一种,也是Intel x86架构的延伸产品。“x86-64”1999由AMD设计,
AMD首次公开64位集以扩充给IA-32,称为x86-64(后来改名为AMD64)。其后也为英特尔所采用,现时英特尔称之为“Intel 64”,在之前曾使
用过Clackamas Technology (CT)、IA-32e及EM64T。外界多使用"x86-64"或"x64"去称呼此64位架构,从而保持中立,不偏袒任何厂商。
ARM:
  ARM架构,过去称作进阶精简指令集机器(Advanced RISC Machine,更早称作:Acorn RISC Machine),是一个32位精简指令集(RISC)处理器
  架构,其广泛地使用在许多嵌入式系统设计。由于节能的特点,ARM处理器非常适用于行动通讯领域,符合其主要设计目标为低成本、高效能、低耗
电的特性。
  IP核,知识产权核(Intelligence Patent core)
Intel IA-32:
  IA-32(Intel Architecture),英特尔体系架构,英特尔从486开始采用,也就叫X86-32架构,在同一时间内可以处理32位二进制数据。CPU
的工作宽度是32位。其它公司在软硬方面都兼容此架构,也列属于IA-32架构
Intel IA-64:
  IA-64是英特尔公司与惠普公司共同开发的纯64位微处理器。IA是Intel Architecture(英特尔架构)的缩写,64指64位系统。
IA-64架构是EPIC(Explicitly Parallel Instruction Computing)的64位架构。EPIC是基于超长指令字VLIW(Very Long Instruction Word)
的设计,通过将多条指令放入一个指令字,有效的提高了CPU各个计算功能部件的利用效率,提高了程序的性能。
  IA-64是一种CPU架构,使用这种架构的CPU有Itanium, Itanium 2。
MIPS:
  MIPS架构(英语:MIPS architecture,为Microprocessor without Interlocked Pipeline Stages的缩写,亦为Millions of Instructions 
Per Second的相关语),是一种采取精简指令集(RISC)的处理器架构,1981年出现,由MIPS科技公司开发并授权,广泛被使用在许多电子产品、
网络设备、个人娱乐装置与商业装置上。最早的MIPS架构是32位元,最新的版本已经变成64位元。
PowerPC:
  PowerPC是一种精简指令集(RISC)架构的中央处理器(CPU),其基本的设计源自IBM(国际商用机器公司)的POWER(Performance Optimized With 
Enhanced RISC;《IBM Connect电子报》2007年8月号译为“增强RISC性能优化”)架构。
  1990年代,IBM、Apple和Motorola开发PowerPC芯片成功,并制造出基于PowerPC的多处理器计算机。PowerPC架构的特点是可伸缩性好、方便灵活。
SPARC:
  SPARC,全称为“可扩充处理器架构”(Scalable Processor ARChitecture),是RISC微处理器架构之一。它最早于1985年由太阳微系统所设计,也是
SPARC国际公司的注册商标之一。这家公司于1989年成立,其目的是向外界推广SPARC,以及为该架构进行符合性测试。此外该公司为了扩阔SPARC设计的
生态系统,SPARC国际也把标准开放,并授权予多间生产商采用,包括德州仪器、Cypress半导体、富士通等。由于SPARC架构也对外完全开放,因此也出
现了完全开放源代码的LEON处理器,这款处理器以VHDL语言写成,并采用LGPL授权。
  SPARC架构原设计给工作站使用,及后应用在升阳、富士通等制造的大型SMP服务器上。而升阳开发的Solaris操作系统也是为SPARC设计的系统之一,除
Solaris外,NeXTSTEP、Linux、FreeBSD、OpenBSD及NetBSD系统也提供SPARC版本。
  现时最新版本的SPARC为第8及第9版,在2005年12月,升阳方面宣布其UltraSPARC T1处理器将采用开放源代码方式。2007年,太阳微系统宣布
UltraSPARC T2处理器已经加入OpenSPARC开放源代码计划。
UltraSPARC

对称多处理机(SMP):
    对称多处理机(Symmetric Multiprocessor)最主要的特征是系统的对称性,即每个处理器可以以同等代价访问各个共享存储器。
显然,SMP的访存模型一定是均匀访存模型(UMA)的。
    对称多处理机(SymmetricalMulti-Processing)又叫SMP,是指在一个计算机上汇集了一组处理器(多CPU),各CPU之间共享内存子系统以及总线结构。
它是相对非对称多处理技术而言的、应用十分广泛的并行技术。在这种架构中,一台电脑不再由单个CPU组成,而同时由多个处理器运行操作系统的单一
复本,并共享内存和一台计算机的其他资源。虽然同时使用多个CPU,但是从管理的角度来看,它们的表现就像一台单机一样。系统将任务队列对称地分
布于多个CPU之上,从而极大地提高了整个系统的数据处理能力。所有的处理器都可以平等地访问内存、I/O和外部中断。在对称多处理系统中,系统资
源被系统中所有CPU共享,工作负载能够均匀地分配到所有可用处理器之上。从而提高整个系统的数据处理能力。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值