您的位置:首页 > 其它

内存

2017-11-25 02:30 127 查看
一、磁盘顺序读取方式的效率:

(1)程序直接访问方式、循环检测IO方式:

以字节为单位

CPU和IO串行,每读一个字节(或字),CPU都需要不断检测状态寄存器的busy标志,当busy=1时,表示IO还没完成;当busy=0时,表示IO完成。此时读取一个字的过程才结束,接着读取下一个字。

(2)中断控制方式:

以字节为单位

循环检测先进些,IO设备和CPU可以并行工作,只有在开始IO和结束IO时,才需要CPU。但每次只能读取一个字。

(3)DMA方式:

以块为单位

Direct Memory

  Access,直接存储器访问,比中断先进,每次可以读取一个块,而不是一个字。

(4)通道方式:

以块组为单位

比DMA先进,每次可以处理多个块,而不只是一个块。

 

二、进程间的通信方式:

管道: 管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。进程的亲缘关系通常是指父子进程关系。

有名管道: 有名管道也是半双工的通信方式,但是它允许无亲缘关系进程间的通信。

信号量 : 信号量是一个计数器,可以用来控制多个进程对共享资源的访问。它常作为一种锁机制,防止某进程正在访问共享资源时,其他进程也访问该资源。因此,主要作为进程间以及同一进程内不同线程之间的同步手段。

消息队列 : 消息队列是由消息的链表,存放在内核中并由消息队列标识符标识。消息队列克服了信号传递信息少、管道只能承载无格式字节流以及缓冲区大小受限等缺点。

信号: 信号是一种比较复杂的通信方式,用于通知接收进程某个事件已经发生。

共享内存 :
共享内存就是映射一段能被其他进程所访问的内存,这段共享内存由一个进程创建,但多个进程都可以访问。共享内存是最快的 IPC 方式,它是针对其他进程间通信方式运行效率低而专门设计的。它往往与其他通信机制,如信号量,配合使用,来实现进程间的同步和通信。

套接字( socket ) : 套接口也是一种进程间通信机制,与其他通信机制不同的是,它可用于不同及其间的进程通信。

 

三、链接库:

1.静态链接库:

特点: 装载执行速度快

优点: (1) 代码装载速度快,执行速度略比动态链接库快;

(2) 只需保证在开发者的计算机中有正确的.LIB文件,在以二进制形式发布程序时不需考虑在用户的计算机上.LIB文件是否存在及版本问题,可避免DLL地域等问题。

缺点: 使用静态链接生成的可执行文件体积较大,包含相同的公共代码,造成浪费。

2.动态链接库:

特点: 共享、开发模式好、减少页面切换

优点:(1) 更加节省内存并减少页面交换;

      (2) DLL文件与EXE文件独立,只要输出接口不变(即名称、参数、返回值类型和调用约定不变),更换DLL文件不会对EXE文件造成任何影响,因而极大地提高了可维护性和可扩展性;

      (3) 不同编程语言编写的程序只要按照函数调用约定就可以调用同一个DLL函数;

    (4)适用于大规模的软件开发,使开发过程独立、耦合度小,便于不同开发者和开发组织之间进行开发和测试。

缺点: 使用动态链接库的应用程序不是自完备的,它依赖的DLL模块也要存在。

如果使用载入时动态链接,程序启动时发现DLL不存在,系统将终止程序并给出错误信息。

如果使用运行时动态链接,系统不会终止,但由于DLL中的导出函数不可用,程序会加载失败;速度比静态链接慢。

当某个模块更新后,如果新模块与旧的模块不兼容,那么那些需要该模块才能运行的软件,统统撕掉。这在早期Windows中很常见。

四、分区分配方案:

在分区分配方案中,回收一个分区时有几种不同的邻接情况,在各种情况下应如何处理?

有四种:上邻,下邻,上下相邻,上下不相邻。

(1)回收分区的上邻分区是空闲的,需要将两个相邻的空闲区合并成一个更大的空闲区,然后修改空闲区表。

(2)回收分区的下邻分区是空闲的,需要将两个相邻的空闲区合并成一个更大的空闲区,然后修改空闲区表。

(3)回收分区的上、下邻分区都是空闲的(空闲区个数为2),需要将三个空闲区合并成一个更大的空闲区(空闲区个数为1 ),然后修改空闲区表。

 

系统回收主存时,按道理,空闲区会加1,但是如果存在以下的两种情况,空闲区个数会有所不同:

(1)当回收的主存与已有的空闲区存在上邻或者下邻的情况,将回收的主存与已有的空闲区合并,空闲区的个数不变;

(2)当回收的主存与已有的空闲区存在上邻和下邻的情况,则回收的主存会将原来的空闲去中的两个空闲区合并成一个空闲区,即回收的主存起到了联通的作用,空闲区的个数不增,反而与之前相比,个数还减少了一个

(3)回收分区的上、下邻分区都不是空闲的,则直接将空闲区记录在空闲区表中。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息