机制和策略区别与策略分别应该如何解释,有什么联系与区别

管理经济学习题及详解_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
管理经济学习题及详解
上传于||文档简介
&&管理经济学课后经典练习题及详细解答
阅读已结束,如果下载本文需要使用2下载券
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩4页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢3151人阅读
一般方法论(19)
机制与策略
KEY:机制 策略 方法 方法论 policy mechanism
一些特殊语境的理解
摘自《Linux device drivers 3rd》设备驱动程序的作用
作为一名驱动程序的编写者,你需要在编程所需的时间以及驱动程序的灵活性之间选择一个可接受的折衷方案。虽然用&灵活&这个词来形容驱动程序显得有些奇怪,但我用这个词实际上是强调设备驱动程序的作用在于提供机制( mechanism ),而不是提供策略( policy ) o区分机制和策略是UNIX设计背后隐含的最好思想之一。大多数编程问题实际上都可以分成两部分:&需要提供什么功能&(机制)和&如何使用这些功能&(策略)。如果这两个间题由程序的不同部分来处理,或者甚至由不同的程序来处理,则这个软件包更容易开发,也更容易根据需要来调整。
摘自互联网
机制就是提供的功能,比如在驱动程序的编写中,你要提供怎样和硬件交流的方式,这就叫机制。
而策略则是指你怎样去使用已有的机制完成你自己的特定的功能,比如在驱动程序的编写中,你该怎样去利用硬件机制完成特定的功能。
不仅仅在驱动方面,在很多,如网络安全方面都有相应的概念。
摘自互联网
现代的OS很讲求机制与策略的分离,以使操作系统的结构和实现能够在一定范围内适应不同的应用需要。例如,SOlaris的调度器实现了进程调度的基本机制,同时它允许通过动态调度核心参数实现不同负载下的系统平衡,这就是一种机制与策略的分离,请再举出一个例子说明怎样根据调度将机制策略分开,请构造一种机制,允许父进程控制子进程的调度策略,谢谢高手指教,给出网址也可以
进程的概念是操作系统的核心,是出了名的(notoriously)难定义。一种粗浅的理解是,进程是程序的一次动态执行,是程序完成
一次任务所需的资源的载体。我们可以把进程比喻成在戏剧院表演独角戏的演员,对于演员,舞台小道具就是他的资源。当演员需道具时,他到道具管理处(相当操
作系统的资源分配程序)申请。由于资源是对所有演员共享的,管理处的工作就是当多个演员申请道具时代为解决资源竞争问题,满足两个冲突的目标:
让每个演员得到他们想要的道具 (机制WHAT的问题)
公平分配道具 (策略HOW的问题)
KEMIN:由于各种资源(包括包装过的高级资源)的性质不一,所以对它们的[管理]方式都不一样的,从管理手段的名称就可看出这一
点,处理器是[调度]的,主存是[分配]的。但从完成管理功能的高度看,它们都有实现管理的部分和如何管理的部分,实现管理就是机制问题,如何管理就是策
略问题。比如,处理器的调度机制(必须有timer和进程切换指令等体系功能的支持)和调度策略。
KEMIN的头脑风暴过程及初步结论
b.一直奇怪&策略&和&战略&是什么东东,原来它们还是方法和工具!今天发现经常与&策略&一起的&机制&一样是方法和工具。只是这两对方法在描述方法的不同侧面。策略与战略是整体与局部的关系,策略与机制是动态与静态的关系。机制有机械的意思,机械意味着固定和自动,所谓应变机制指的是应对变化有一套固定被测定为较好自动处理方法。策略是在机制的基础上再作具体问题具体方法调整。举个例子,计算机为了实现并发处理引入了中断机制;而为了解决速度不同的中断事件引入了中断优先级处理策略。
b.机制有机械机理的意思。但相对机理强调内部结构和组件间序关系不同,我觉得人工机制强调的是系统面对外部事件时应变规则。这个有点像编程时的分支流程,也就是先判断一个条件事件,然后自动选择一条最有效的处理分支,产生一个最有价值的效果。我们在设计一个人工机制时,就是对这些分支的设计,包括评价各分支的效益。
b.其实机制和策略算是设计理论方面的内容。对于应用或驱动开发人员来说还不算合适,因为设计任务一般是统筹工作,属于系统设计人员的职责。开发人员一般在一个大框架内演绎,可设计可编程可演绎的空间很有限的,不是说没有设计。比如,别说开发人员,系统设计师也不会设计一个新的并发机制现有的中断机制,他们对中断优先级策略的调整也是很有限的。而应用开发人员更多在做一些更具体更特殊的收尾工作。
b.同是内核,却会有单内核和微内核的不同的实现形式,我们假设二种形式的内核的功能都是相同的,那构造方法却不同,这意味什么呢?相同的功能说明机制一样,构造方法不同是策略不同?
b.其实机制就是一种由能量驱动的刺激与反射活动的概括,也就是我常常谈的性质、属性、功能或作用。抽出一个与机制相对概念--策略是因为我们从改造的视角,想当一回上帝,主观地改造世界的原因。我们为一些外界环境约束(人为的或自然的)人工地制造性质、功能和作用。策略就是为了满足不同的约束的一种方法。
22:27:58 b.前面说过,机制和策略都是一种方法,现在又说机制是一种人造性质,貌似前后矛盾,因为方法是时间性的,而性质则是空间性的。的确表述上存在不清晰,要谈到方法一定会涉及工作任务
,因为方法指是工作的步骤。我们举一个例子来理解。比如我们说人是会跑的,会跑是上帝赋于人的活动机制,是人的一项性质;而我们说某人能从甲地跑到乙地花时一天,这是说某人利用会跑的机制完成一件工作,但是完成这件工作的过程中会遇种情况,比如上山下海,比如半路发现有公路可使用自行车更快的到达乙二等诸多的环境约束,那么策略就是用来解决过程所出现的各约束的。
加入系统做功的结论
由上面的头脑风暴,我们大概了解机制和策略的一些&性质&了。但不完全。第一,为什么要引入机制,为谁引入机制?机制都是由设计师为[系统]设计的性质和功能。系统本身就是一项产品。
第二,如果策略是基于机制的如何,那么具体表现是什么?我们知道会跑与跑完是不同的,前者是机制,后者机制做功,策略就存在于做功的过程中。要理解策略,得先弄清楚系统机制做功过程的本质。
我们常说功能功能,严格上说,功与能是有密切的关系,但不是同一个概念。&能&强调的是系统静态性质;而&功&则强调动态的活动性,有时间因素。&功&是系统在一定时间内的活动效果,是建立于系统的某一&能&上的活动,活动过程有能量释放。到这里,虽然区分了功与能的差别,但因为&功&的过程本质没有厘清,所以策略也很模糊。
请看看一则关于&系统做功&引用:
系统首先强调的是事物间的相互制约的结构,其次系统与边界的交互。因为系统不仅存以于静态的空间中,而且还存在于时间中,被时间向前推动,不断地[做功](无论是被动还是主动的)。[做功]是一种条件反射现象,过程有能量的单方向释放。有些观点认为,系统与系统边界有着物质、能量和信息的交换。我认为,第一,能量是始终存在于动态的时空中的,它是默认的,不必特指;第二,物质可泛化为信息的一种(通过定义[信息]为做功的[输入])。所以系统与系统边界协作[做功]可以简化为只通过交换[信息]完成。
从以上的论述可得到,如果撇开主观性,其实存在于时空中的系统都在时时刻刻做着功。添加主观性后,我们有意限制系统做功,为我们做有益的功。功就是功效,一种新的状态输出,所以,功在不同环境和场合有不同类型;不过做功都要有一定的输入(信息或物质)和都在一个特定的上下文环境下完成的。俗话说:&方法好就事半功陪&,这个方法、事和功都一般的;事就是做功的上下文,方法就是策略!
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:735973次
积分:11251
积分:11251
排名:第1048名
原创:274篇
转载:47篇
译文:50篇
评论:324条
(1)(2)(2)(8)(1)(3)(1)(3)(3)(3)(2)(3)(4)(2)(1)(2)(3)(9)(3)(5)(8)(4)(9)(7)(4)(4)(3)(3)(4)(6)(6)(6)(6)(4)(5)(4)(5)(7)(12)(4)(2)(1)(1)(1)(3)(9)(1)(1)(5)(2)(2)(3)(4)(3)(2)(3)(4)(4)(4)(3)(6)(7)(6)(10)(7)(10)(4)(1)(7)(7)(4)(10)(4)(4)(10)(7)(7)(9)(13)(10)(5)(3)博客访问: 625049
博文数量: 342
博客积分: 9995
博客等级: 中将
技术积分: 4349
注册时间:
IT168企业级官微
微信号:IT168qiye
系统架构师大会
微信号:SACC2013
分类: LINUX
Unix/Linux的接口设计有一句通用的格言“提供机制而不是策略”。区别对待机制(mechanism)和策略(policy)是Unix设计中的一大亮点。大部分的编程问题都可以被切割成两个部分:“需要提供什么功能”(机制)和“怎样实现这些功能”(策略)。如果由程序中的独立部分分别负责机制和策略的实现,那么开发软件就更容易,也更容易适应不同的需求。
开源-展现在我们面前的是数以千计的代码,在那一行行的代码背后,到底蕴藏着怎样的设计思想,高手们曾怎样苦思冥想。在一堆堆的代码面前,有时候,我们很容易迷失曾经进来的入口,而掉入符号,变量以及函数堆积成的沼泽地。
操作系统的本质是什么?管理者?亦或服务者?但,归根结底,它是一个执行者:执行用户程序-所谓为用户服务;执行中断-所谓为外设服务;执行系统调用-所谓解放程序员(姑且说它为广大的程序员服务,因为程序员不再与繁杂的硬件打交道了);执行内核线程-为操作系统自身服务。而这所有执行的核心,无非是在恰当的时机,让哪个对象(程序,线程,中断服务程序,中断的下半部,系统调用)占有CPU。换句话说,Unix/Linux抽象出对这些对象的执行机制:
程序的执行机制-进程内核函数的执行机制-线程中断服务程序的执行机制-中断信号触发中断下半部的执行机制-softirq,tasklet,工作队列系统调用的执行-软中断(int $0x80触发)& 从机制和策略的角度看问题,也许,你对曾经困惑的问题有赫然开朗之感。
如果说机制是一种框架,那么,策略就是填充框架的一个个具体实体。机制提供的是一种开放而宽松的环境,而策略就是在这个环境下赖以生存的生命个体。比如,我们编写的一个程序,fork()以后,就成为一个个进程的生命个体。而操作系统所提供给我们创建、执行以及结束进程的各种原语-fork(),exex()和exit()等是统管各种进程的机制。我们所创建进程的死活并不会影响机制本身。
如此看来,也许我们对原理之困惑有所醒悟。我们任何人在任何时候都可以调用fork()创建N多进程。这样一个简单的fork()壳,想追根溯源者,剥开这个壳,可以看到其五脏六腑。fork()如果出现任何一个小bug,直接影响到我们任何人和任何进程。
如此看来,也许我们对开发者所承担的角色有所感悟。系统分析员和设计人员,任重而探究的路漫漫兮。说到此,设计模式等系列书,对有志于从编码走向设计的开发者或许有所启发。
阅读(1416) | 评论(2) | 转发(2) |
相关热门文章
给主人留下些什么吧!~~
usb控制器硬件作为一个通信媒介和手段,当他能够顺利的把1个待发数据包,传递到对方;同时又能顺利的接收由对端发过来的数据的时候,作为一种传输媒介和手段,usb控制器硬件已尽到了他的责任,他能到一边坐着椅子喝茶了,如果他还想染指其他的方面,那就有点过犹不及了.
正如在unix中常说的一个经典语--"机制和策略要分开",从协议层来看,usb控制硬件提供的是一种"机制",并且PDIUDBD12和AT91RM9200提供了一个没有所有闲言碎语的真正的让用户放心的用起来踏实的纯"机制"---能够正常的把A数据丢到对端,能正常的接收对端的B数据---之后的工作,就完全靠"策略"了,好的"机制"能够确保"策略"上有一个的可靠和清晰的后盾,不过要记住一点:好的应用"策略"--"战略"才是让世界缤纷多彩起来,东西五花八门起来的,这里的"策略"就是常说的"USB协议",如:"HID Class"、"Mass Storage Class"、
"Audio Class"、"Video_Class"、"Smart Card Class"、"Printer Class"和"Communications D
请登录后评论。管理经济学课后简答题_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
管理经济学课后简答题
上传于||文档简介
&&自考管理经济学
阅读已结束,如果下载本文需要使用2下载券
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩5页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢

我要回帖

更多关于 机制与策略分离 的文章

 

随机推荐