求解三维装箱问题的混合模拟退火算法的实现 MATLAB

由于要数学建模中需要解决一个三维装箱的问题,我经过搜寻选定了张德富教授等在计算机学报上发表的《求解三维装箱问题的混合模拟退火算法》这篇论文作为解决问题的理论基础。 该论文的摘要如下: 提出了一个高效求解三维装箱问题(Three Dimensional Container Loading Problem 3D-CLP)的混合模拟 退火 算法 .三维装箱问题要求装载给定箱子集合的一个子 集到容器中 , 使得被装载 的箱子总体 积最大 .文中介绍 的 混合 模拟退火算法基于三个重要算法 :(1)复合块生成算法 , … 阅读更多

Automatic Testing and Improvement of Machine Translation (TransRepair) 论文阅读总结

不久前我阅读了Automatic Testing and Improvement of Machine Translation这篇论文,它提出了一种在软件测试领域下机器翻译模型的一种自动测试方法(成为TransRepair)。下面我将从几个方面对这篇论文所说的内容进行总结。 Automatic Testing and Improvement of Machine Translation TransRepair是一种对于机器翻译软件的一致性问题进行自动检测与自动修复的方法。 TransRepair提供了黑盒与 … 阅读更多

Structure-Invariant Testing for Machine Translation (SIT)论文阅读总结

不就以前,我阅读了Structure-Invariant Testing for Machine Translation,这篇论文提出了一项关于机器翻译软件系统的鲁棒性问题的检测的研究。下面我将从几方面来介绍我所理解的一些内容。 Structure-Invariant Testing for Machine Translation的主要内容 SIT主要是对机器翻译软件系统的鲁棒性问题的检测的研究。 SIT基于蜕变测试中的一个蜕变关系“结构不变性”来展开。 SIT主要步骤是选用原句、生成相似句、从翻译软件获得 … 阅读更多

有关于C++右值的一些知识点总结

最近由于工作需要,我阅读了很多关于C++右值方面的材料。并结合我的一些实践经验,得出了下面十条总结。 C++右值有两种:纯右值、将亡值。 右值引用的一个作用是延长右值的生命周期 临时对象作为右值处理 移动构造函数尽可绑定右值非常量 对于一个右值对象,允许调用成员函数 右值可以被修改(这也说明了其可以被破坏) 右值不能当作左值使用,左值可以当作右值使用。 常量左值引用可以绑定到右值 返回右值引用的函数在几乎所有情况下是糟糕的 在大部分情况下return中使用是std::move并不会将事情变得更好,相反该操作 … 阅读更多

Intel x86处理器 处理器中断处理 概要知识点

处理器中断处理是学习计算机体系架构的一个必须要掌握的知识。在Intel的x86处理器下,中断是外部中断、异常和陷入的统称。 外部中断来自硬件,是随机的。 异常来自处理器内部,表示处理器执行指令的过程中检测到了某种错误条件。 陷入来自程序,由INT n,INTO等指令产生。 外部中断可以被屏蔽,但线路和异常不能被屏蔽。屏蔽中断的方法是清除EFLAGS寄存器中的IF标志。 处理中断的程序叫作中断处理程序。 处理异常的程序称为异常处理程序。 处理陷入的程序称作系统调用服务程序。 处理程序可以位于内和空间的任意位置 … 阅读更多

Intel x86处理器内存保护 概要知识点

一旦处理器内存保护机制被启动,处理器就会对每一次内存访问进行保护性检查,以确保所有的访问都满足保护策略。保护检查和地址转换是并行进行的。 保护检查包含段级检查和页级检查。检查顺序是先段后页,检查依据是段描述符,页目录和页表,检查的基础是特权级。 特权级是Intel为实现保护而定义的特权编号。 段一级的检查包括段界限检查,段类型检查,特权级检查,长指针检查等。段一级检查的原则是: 低特权级的代码不能访问高特权级的数据 高特权级的代码可以访问低特权级的数据 代码只能使用与其特权级相同的堆栈,当特权级切换时,堆栈 … 阅读更多

内存管理拓展概念

平板式内存管理。屏蔽掉段式管理,完全采用页式管理。做法是定义一个代码段,定义一个数据段。代码段和数据段的大小都是4GB。如此一来逻辑地址就是线性地址。 保护平板式内存管理。做法是定义内核代码段,内核数据段,用户代码段,用户数据段。四个段的基地址都是0大小为4GB进程执行内核代码时使用内核段,执行用户代码时使用用户段。段的地址转化作用被屏蔽,但基于特权级的保护特征被保留。对于同一个进程来说,由于它对四个段的使用绝不会重叠,因此可以将四个段叠加起来,看成是进程平板地址空间,同时也可以将四套页目录/页表合并成一套 … 阅读更多

段页式内存管理概要

段页式内存管理中,段的线性地址被分割成大小相等的线性页(4KB,4MB或者2MB等)。物理内存空间同样也被分成相同大小的物理页。操作系统维护一个页表,用于管理线性页到物理页的映射。页表在IA-32体系结构中分为两级,即页目录和页表 页目录是一个数组,其元素叫做页目录项(PDE),每个页目录项描述一个页表。页目录的大小为一页(4KB),一个页目录中有1024个页目录项。页目录项的大小为4字节。页表大小为一页(4KB)。页表项的大小为4字节,所以一个页表最多可以描述1024个线性页。 物理页是预先划分好的,其开 … 阅读更多

段内存管理概要

IA-32体系中提供了段页式内存管理机制,先分段再分页。提供页式是为了支持虚拟内存。 段:处理器的可寻址的线性内存空间被划分成了若干个大小不同的段。一个段是线性地址空间中的一个连续的区间。段中可保存代码、数据、堆栈或者其他数据结构。段的属性信息由与之对应的段描述符描述。段描述符是一个数据结构。Intel用段描述符表来管理。段描述符表最大可达64KB。 当G为0时,段以字节为单位,最大的段长为1MB。当G为1时,段以页(4kb)为单位。最大的段长为4GB。 DPL是段的特权级,其值在0~3之间。 S是系统标志 … 阅读更多

硬件平台概要

内存是处理器可以直接访问的储存空间。为了加快内存访问速度,计算机系统中通常提供了一些高速缓存(Cache),高速缓存通常由硬件管理。 I/O设备由I/O控制器和物理设备组成,处理器通过I/O控制器管理物理设备。I/O控制器主要由控制与状态寄存器(CSR)和数据寄存器组成。处理器通过读CSR来获得设备状态,通过写CSR来控制设备动作,通过读写数据寄存器来交换数据。内核通常将I/O设备抽象成一组寄存器,并给一个寄存器一个I/O地址。处理器通过I/O地址访问I/O寄存器。 现代计算机系统中许多设备寄存器可以被映射 … 阅读更多

en_USEN