体系结构基本概念

原创 2013年12月05日 18:29:48

1   zero overhead loop branch开销不需要在jump时进行流水重建?

2   粗粒度线程threadSMT的概念

       进程的概念:在多任务的操作系统中有多个进程存在于虚拟内存中。

操作系统维护四张表,内存表,IO表,文件表和进程表,称为os control table

Process control block:进程在内存的manifestation,代码段,数据段,堆栈段,信息段,称为进程image。虚拟地址连续:process identification,process state information, process control information, 用户栈,代码和数据,公共共享内存。

内存表用来存储实际内存和虚拟内存,内存表中记录着进程对实际内存和虚拟内存的占用。

进程可以运行在内核模式(对所有的寄存器和指令具有访问权限)或者用户模式,Programe status word PSW中存放进程运行的模式,从而处理器可以知道按何种方式运行。

进程的创建:pid,分配空间

进程切换和模式切换:指令周期的末尾都要看是否有中断pending(等待),如果没有,则进入取指令周期,如果有中断信号,则将PC置为中断响应函数的地址,然后将模式从用户级切换到内核级别。模式切换不会改变进程的状态。

       早期的OS内存中的一部分被用来跑OS,剩下的被进程使用,这样做的代价是进程要先切回OS。现代OS也是进程,切换到kernel模式只需要模式切换。

       线程的概念:进程是资源的单位,线程是分发的单位。在进程内部,线程可以处在等待或者运行状态,并且在等待时会保存一个线程的上下文,线程可以看成有自己独立的PC,独立的线程栈(区别于kernel),一些静态存储单元,和其他线程共享该进程的存储空间和地址空间。

       线程的好处在于:轻量级,创建终止切换消耗小,线程间通信不需要调用内核!在多核处理器上,不同线程可以同步执行。在单核处理器上,线程也可以使进程的任务分得更细,例如在excel中一个线程可以用来显示view,另一个线程用来响应用户输入,从而可以提高运行速度。在word中,多余的线程可以用来将用户做的输入做备份。线程还可以提高批处理的执行速度,例如一个线程写另一个线程读,这样一个线程等IO时另一个线程可以干活,进程不会被替换掉。

       线程的同步:线程有运行状态和等待状态,因此可以有同步。

       多核多线程的速度提升公式=1/[(1-f)+f/N]N为核的数目,f为并行代码量比例,当f=0.9时,对于8核的处理器速度提升不到5.

3.  频率越高流水越深:

因此外设的速度是一定的,因此访问时间相对固定,如果频率加快,则还是要用相同的时间从外部读入或写出数据,因此要经过更多的步骤,因此流水加深

4. cache 概念比较

 

4.1 write backwrite through的概念

Write back:如果hit,先将数据写到cache,然后在该cache lineflush时才在内存中更新。

Write though:如果miss,直接将数据写到内存不管cache,如果hit,同时更新cache和内存。

4.2 写分配和写不分配(与write backwrite through 有什么区别)

如果找不到:如果某个数据不在cache里,则直接写到内存中,则为写不分配

如果某个数据不在cache里,则会分配cache的一个line,则称为写分配。

5 没有解决的问题:

5.1 超出4M的地址范围时的处理方法:L1BTBL2BTB配合:L2中放相邻地址?

5.2 MMU的概念:内存中没有页表,但是有TLBL1中存放>1M的地址,L2中存放详细地址

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

《Hadoop 2.x HDFS源码剖析》1 — HDFS 体系结构与基本概念

HDFS 体系结构  HDFS(Hadoop Distributed File System,Hadoop分布式文件系统)最开始作为Apache Nutch搜索引擎的基础架构而开发的,是Apache ...

网络体系结构和基本概念

  • 2014-11-05 12:52
  • 602KB
  • 下载

低功耗蓝牙开发技术概述(一)——基本概念和体系结构

1、术语 在低功耗蓝牙方面工作的人们都使用他们自己的术语来描述一些技术特征和规范,下面介绍几个相关术语 自适应跳频(Adaptive Frequency Hopping, AFH):一种使用某个频率子...

Hibernate框架学习(第一讲)---基本概念和体系结构

当今应用软件的交互基本上都离不开数据库的支持,在Java的世界里,传统的数据库访问就是jdbc数据库访问,刚开始学习的时候应该还能满足我们的需求,但真正在实际应用中,其繁琐的操作,开发效率低效,代码冗...

高等计算机体系结构基本概念总结

高等计算机体系相关概念

Java程序员从笨鸟到菜鸟之(五十)细谈Hibernate(一)hibernate基本概念和体系结构

数据库操作是当今传统应用软件不可缺少的一部分,几乎所用的应用性系统和交互性软件都离不开数据库的支持,所以对数据库数据库的操作也是一个必不可少的工作,在java的世界里,传统的数据库访问就是jdbc数据...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)