L1高速缓存,也就是我们经常说的一级高速缓存。在CPU里面内置了高速缓存可以提高CPU的运行效率。内置的L1高速缓存的容量和结构对CPU的性能影响较大,不过高速缓冲存储器均由静态RAM组成,结构较复杂,在CPU管芯面积不能太大的情况下,L1级高速缓存的容量不可能做得太大。采用回写(Write Back)结构的高速缓存。它对读和写*作均有可提供缓存。而采用写通(Write-through)结构的高速缓存,仅对读*作有效。在486以上的计算机中基本采用了回写式高速缓存。在目前流行的处理器中,奔腾Ⅲ和Celeron处理器拥有32KB的L1高速缓存,奔腾4为8KB,而AMD的Duron和Athlon处理器的L1高速缓存高达128KB。
L2高速缓存,指CPU第二层的高速缓存,第一个采用L2高速缓存的是奔腾 Pro处理器,它的L2高速缓存和CPU运行在相同频率下的,但成本昂贵,市场生命很短,所以其后奔腾 II的L2高速缓存运行在相当于CPU频率一半下的。接下来的Celeron处理器又使用了和CPU同速运行的L2高速缓存,现在流行的CPU,无论是AthlonXP和奔腾4,其L2高速缓存都是和CPU同速运行的。除了速度以外,L2高速缓存容量也会影响CPU的性能,原则是越大越好,现在家庭用CPU容量最大的是512KB,而服务器和工作站上用CPU的L2高速缓存更高达1MB-3MB。
——》1,高速缓存(Cache),全称“高速缓冲存储器”。
——》2,例如:当CPU处理数据时,它会先到高速缓存中去寻找,如果数据因之前的操作已经读取而被暂存其中,就不需要再从主内存中读取数据——由于CPU的运行速度一般比主内存快,因此若要经常存取主内存的话,就必须等待数个CPU周期从而造成浪费。
——》3,提供“高速缓存”的目的是为了让数据存取的速度适应CPU的处理速度,其基于的原理是内存中“程序执行与数据访问的局域性行为”。
——》4,现在Cache的概念已经被扩充了:不仅在CPU和主内存之间有Cache,而且在内存和硬盘之间也有Cache(磁盘高速缓存),乃至在硬盘与网络之间也有某种意义上的“Cache”(Internet临时文件夹)。
——》5,凡是位于速度相差较大的两种硬件之间的,用于协调两者数据传输速度差异的结构,均可称之为Cache。
——》6,所以硬盘和内存之间的Cache就叫做磁盘高速缓存。它是在内存中开辟一块位置,来临时存取硬盘中的数据。这项技术可使计算机读写时的存储系统平均数据传输率提高5-10倍,适应了当前激增的海量数据存储需求。
——》7,在DOS时代,我们用:
smartdrv 内存容量
命令来加载硬盘高速缓存。自从有了Windows后,我们就不需要加载硬盘高速缓存了,因为Windows本身有自己的高速缓存管理单元,如果强行使用smartdrv命令加载,反而会影响Windows的性能。
——》8,我们在用硬盘安装Win2000/XP时候,系统会提示加载高速缓存,这是因为在安装的初期还是DOS操作,所以为了达到读存的速度,安装程序要求加载高速缓存
1.1 缓存管理器介于内存管理器(VMM)和文件系统驱动程序(FS)之间,它包含一组以"Cc"打头的内核模式函数,全局变量,以及一些系统线程.
1.2 缓存管理器(CM)以虚拟块(Virtual Block)为基础来缓存数据,
这使得可以在不涉及文件系统驱动程序的情况下进行智能预读((Read_Ahead)和延迟(Lazy_Write)
1.3 Windows缓存管理器使用一种称为虚拟块缓存(virtual Block caching)的方法,它跟踪,记录了哪些文件的哪些部分位于缓存中.
1.4 在intel x86系统中,系统默认的缓存大小为512MB,地址范围是0xc1000000--0xe100000
2.缓存管理器during read and write operation
2.1 读的操作.
大致的过程如下,从I/O管理器发出一个read的IRP开始,然后是到文件系统驱动程序,然后是缓存管理器,再然后是虚拟内存管理器.
中间需要进行两个判断,1.缓存管理器是否将文件缓存到系统缓存中? 2,是否产生页错误?
2.2 写操作和读操作类似,见下图.
3.Cache Manager Interface
3.1 文件流(File Stream) 操作函数(
使文件映射到系统缓存中.
@ CcInitializeCacheMap()
@ CcSetFileSize()
@ CcFlushCache()
@ CcZeroData()
@ CcGetFileObjectFromSectionPtrs()
@ ......
3.2 文件系统接口
一旦一个文件已经被建立起缓存方式的访问环境,文件系统驱动程序就调用几个函数中的某一个来访问文件中的数据.
要访问被缓存的数据,可以通过下面三种主要的方法:
1、通过服务器管理器安装添加角色2、下一步
3、勾选“文件服务器”
4、下一步
5、勾选“文件服务器”和“windows Search服务”
6、可以勾选需要索引的卷
7、确认安装项目,进行安装
8、安装
9、安装成功,关闭对话框。
10、在“服务器管理器”中,展开“角色”-----“文件服务”-----“共享和存储管理”。在管理工具里面也可以找到。
11、点击右侧的“设置共享”
12、浏览需要共享的文件夹
13、我们选择C盘的share文件夹
14、点击下一步
15、我们来更改,编辑NTFS权限
16、给予user组可读的权限
17、下一步
18、勾选“SMB”,确定共享名。下一步。
19、点击高级,可以配置一些高级选项。
20、在用户限制标签,可以限制同时连接这个共享的用户数,或者启用禁用,基于访问权限的枚举。
21、在“缓存”标签,可以设置这个共享文件夹是否可以在客户端缓存。
22、根据自己需要设置好之后,下一步
23、这个共享文件夹,我们让所有用户都只具有只读的共享访问权限。
24、由于我们还没有配置DFS,我们暂时不要将它发布到DFS命名空间
25、确定我们的配置,点击“创建”
26、成功之后,关闭窗口。
27、我们在共享和存储管理中,可以看到我们新建的share共享了。
28、选中share共享文件夹,我们在右侧启用或者停止共享。
29、我们也可以在这个共享文件夹上,点击右键,选择“属性”
30、在这里我们依然可以对这个共享的属性进行调整。
31、还可以调整共享权限和NTFS权限。
32、我们往C:\share里面放入一些文件。
33、我们找到一台同网段的客户端电脑
34、通过 \\fs01 来访问文件服务器。我们发现已经可以正常访问了。
35、双击进入share目录,可以看到我们刚才放入的文件。
36、我们尝试一下删除
37、可以看到,大家只有只读权限。
我的服务器用的是小鸟云的,挺稳定的,性能好。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)