第六周

本周我主要阅读了《系统科学方法盖伦》第四章控制方法和《程序是怎样跑起来的》第五章到第八章
所谓控制就是指在一定环境中,一个系统通过一定方式驾驭或支配另一个系统,做和目的的行为及过程。控制系统由各种控制要素构成,控制要素主要包括失控系统,受控系统,控制手段,控制目的和控制环境。控制过程的实质是施控系统在受控系统的多种可能运动状态中进行选择的过程。控制过程的实现需要两个基本条件,包括受控系统存在多种可能的运动状态,施控系统必须具被选择数控系统运动状态的能力。控制系统主要包括开环控制系统,闭环控制系统和组合控制系统三种基本类型。控制方式包括随机控制,记忆控制,共轭控制。反馈控制,随动控制和程序控制。控制系统的基本属性有目的性,振荡性,稳定性反馈性,趋优性 。其中反馈包括正反馈和负反馈,前馈和后馈。控制过程的基本步骤包括,一,了解控制对象的多种可能运动状态。二,确定控制目标。三,制定控制方案。四,实施控制,五收集并处理反馈信息。六,调整控制状态。失控是指受控系统脱离施控系统的目标而运动。失控现象的原因主要有,一,失控现象与环境因素对控制过程的干扰有关。二,失控现象与施控系统控制能力的欠缺或削弱有关。三,失控现象还与控制途径的中断有关。四,失控现象还与受控系统自身结构损坏。所谓模拟即指根据原型来制造或组织模型使模型与原型之间有相似特征的过程。所谓功能模拟器以研究原型客体功能特性为对象的一种模拟,它要求模型与原型之间具有功能的相似性。如果有一个认识对象,我们只知其外部功能,而对其内部结构或机理完全不清楚。在控制论中把这个认识对象称之为黑箱。黑箱方法包括一确定黑箱。二,确定输入与输出。三,找出输入与输出关系并建立模型。是推导出黑箱的内部联系。如果有一个认识对象,我们对其内部结构有一定程度的了解,但又不完全清楚,我们就说这个认识对象是一个灰箱。灰箱方法的步骤包括,一,根据已知部分推测其未知部分。二,应用黑箱方法认知位置部分。三将上述两部认识结果加以综合,得出对整个灰箱构的认识。如果认识一个对象,我们将其内部结构完全搞清楚,那么我们就说这个认识对象是一个白箱。所谓白箱方法就是指把对对象系统内部的认识用一定关系式或模型表达出来。并进一步推测其变化规律以及对系统功能影响的方法。
以上是我本周对系统科学学习的主要内容,期待接下来的阅读会让我对系统科学有更深入的认识。
第五章内存与磁盘的密切联系。
本章在进入正题前,作者同样准备了六个热身问题,同样我一个都不会。本章共六节,作者由浅入深逐步讲解。我对本章印象比较深刻的是第二节提高磁盘访问速度的磁盘缓存,磁盘内存是一块内存空间,用于临时存放中磁盘读取出来的数据。由于磁盘缓存对于提高磁盘访问速度已经没有太大效果,所以提出了缓存这一设计即将低速设备中的数据保存在高速设备中,当需要消防数据值直接从高速设备中取出,这样的设计就叫做缓存。第三节将磁盘当成内存使用的虚拟内存,虚拟内存是体现内存与磁盘密切联系的第二个例子,所谓虚拟内存是将磁盘的一部分模拟成内存来使用的机制。虚拟内存的作用是我们可以在内存不足的状态下运行程序。虚拟内存的实现方式有分页式和分段式,Windows采用的是分页式。在这种方式中要运行的程序无论结果如何都会被划分成一定大小的页面。并以页面为单位在内存和磁盘之间进行置换。
作者以通俗的语言和适当举例让本来晦涩难懂的概念变得容易理解
第六章自己动手压缩数据。
在步入正题前,作者准备了六个热身问题,由于先前对这方面知识的欠缺,我大部分都回答不出来或比较模糊。本章共七节,作者从文件的记录方式到无损压缩与有损压缩。由浅入深,逐步深入讲述压缩数据的方式和原理。对于本章我印象比较深刻的是第二节游程编码的原理通过作者的举例,我了解到将文件内容用数据从重复次数来表示的压缩方法,称为游程编码。第三节游程编码的缺点,同样作者通过举例我了解到了游程编码虽然虽然有利于处理相同数据连续重复的情况较多的图片文件但游程编码并不适合用来压缩文本文件。以及第五节用树来构建哈夫曼编码作者知道大部分读者可能第一次接触哈夫编码,所以作者使用这种形象方式来讲解哈夫曼编码。哈夫曼算法使用哈马素来构建编码系统,从而实现了不用分隔符就能区分字符的编码系统。作者分步骤举出了四个例子帮助读者理解。
第七章程序在这样的环境下运行。
对作者开头提出的热身问题我虽说部分能够回答但其底层的原因和一些概念性的内容我是比较模糊的。通过对本章的阅读我了解到了运行环境的差异会对程序的运行产生影响通过作者的讲解我了解到了这其中的原因和一些解决方法。本章共七节作者由浅入深逐步展开讲解。其中我对第一节运行环境=操作系统+硬件,第五节在任何地方都能提供相同运行环境的JAVA虚拟机和第七节BIOS与引导装入程序印象比较深刻。机器语言的程序也称为本机代码。我也学习到一些概念性知识在任何环境下文本文件都可以显示和编辑这样的文件被称为源代码。对源代码进行编译可以得到本期代码在大多数情况下应用程序不是以源代码的形式分发的,而是以本机代码的形式分发的。
第八章从源文件到可执行文件。
在本章步入正题之前,作者所提出的六个热身问题中,我可以回答第一个问题,其余我的问题由于相关知识的欠缺不能回答上来。本章共九节。作者通过从底层到进阶一步步深入展开讲解并将重点放在编译器和链接器的功能上。在讲解过程中,作者借用c语言有读者可以在实际操作中了解程序从编写到运行的整个过程。在本章中我对第三节编译器负责编译源代码,第六节,DLL文件与导入库和第八节加载时生成的栈和堆印象比较深刻。同学在本章中我也学习到了一些概念性知识比如:使用编程语言编写的程序成为源代码,将源代码保存成一个文件就成为源文件。转储是指将文件内容按一字节二位十六进制数的形式显示出来。负责将高级语言编写的源代码翻译成本机代码的程序称为编译器。编译器会读取源代码的内容,并将其翻译成本机代码。将多个目标文件拼接在一起,生成一个EXE文件的过程成为链接。包含目标文件本身可以直接链接到文件的EXE库文件称为静态链接库。栈是用来存放函数内部临时使用的变量以及调用函数时传递的参数等数据的内存空间。堆是在程序运行时用来存放任意数据的内存空间。

posted @ 2024-02-23 03:33  Xujunxiang  阅读(9)  评论(0编辑  收藏  举报