文档视界 最新最全的文档下载
当前位置:文档视界 › Windows CE

Windows CE

Windows CE
Windows CE

Windows https://www.docsj.com/doc/6b2036107.html,应用程序开发

作者:

Paul Yao, Windows Embedded MVP

Paul Yao的公司

20028月

使用于

Microsoft? Windows? https://www.docsj.com/doc/6b2036107.html, application development

Microsoft .NET Compact Framework

内容

简介

Win32 API

Microsoft Foundation Class Library

.NET Compact Framework

结语

简介

面对开发微软? Windows? CE .NET应用程序的众多选择可能会让你望之却步。想要建立传统图形使用者接口(GUI)的开发者可以选择微软Win32?应用程序接口(API)、对象导向式的微软基础类别库(Microsoft Foundation Class (MFC) library)或是.NET Compact Framework(有大量的程序模型及工具支持)。本份文件将会概述这些接口(API)的基本特征并使读者在选择时具有基本的知识背景。

本篇文件的主要目的是对比出在微软Windows CE(包括Pocket PC以及Windows CE .NET)上三种程序设计界面(API)的技术优点。通常,能拥有许多选择是件好事,但这也有可能导致我们要花更多时间在分析上。在选择应用程序接口的时候必须要深思熟虑,因为你所写下的程序代码不仅仅只是开发的时候要使用,也要考虑未来维护的便利性。

每个在本份文件中讨论到的应用程序接口(API)最初都是实作在微软桌上型(desktop)窗口上。实作在Windows CE .NET上的只是其子集合而已。如果你曾经在桌上型窗口下使用过其中任何一种接口,那么你将会发现其最核心的功能在掌上型窗口下一样支持。因此,你对前者具有的认知可能已足够你在后者作一个良

好的选择。不过事实上你还是没有使用掌上型应用程序接口(API)的经验,所以首先你必须决定要学习哪种。表格一摘要了这三种界面的优点及缺点,而文件的其余部分就是针对这个表格提供更详细的讨论。

表格一.三种Windows CE .NET程序接口的优缺处

Win32 应用程序接口

Win32是「Windows 32位应用程序接口」的简称。它是三种应用程序接口内历史最悠久的,可以回溯到1992年启用的Microsoft Windows NT?。然而,它实际的年纪比这个更大。Win32是以Windows 16位应用程序接口(Win16)为基础,而Win16早在1985年11月就跟Windows 1.01一起正式启用了。

其它的API皆极为依赖Win32 API。有人说过:「Win32是Windows的汇编语言。」即使你并不是选用Win32来当你的API,其它所用到的工具最后还是会呼叫Win32的函式来完成工作。这种事情在你要用到MFC或.NET Compact Framework 不支持的功能时最为明显。MFC及.NET Compact Framework都允许你在此时连结入更底层的Win32 函式。

跟Windows桌上型(desktop)版本比较起来,Windows CE .NET支援较少的Win32

函式。虽然有些人会使用「子集合」这个名词来说明Windows CE内的Win32

的地位,但是你也可以将之看作「Win32 API中最伟大的畅销作品」。设计Windows https://www.docsj.com/doc/6b2036107.html,的人为了让Windows CE .NET变小,慎重的挑选了应该包含及舍弃的函式,因此许多冗赘的函式都已被删除。例如,桌上型版本同时拥有TextOut跟ExtTextOut,但Windows https://www.docsj.com/doc/6b2036107.html,只有ExtTextOut。扮演与过去环境兼容角色的函式同样也被删除了。不支持Win16的登录(registry)函式,而只有最新的Win32版本是能被使用的。总之,Windows https://www.docsj.com/doc/6b2036107.html,上的Win32 是精简且兼容性高的,并只注重开发者会用到的工作。

Win32 API的好处

Win32 API是一条通往最小软件的路。Win32不像MFC和.NET Compact Framework需要另外一个执行期间程序(runtime)。相反的,它本身就是一个执行期间程序。

Win32 API同样也是通往最快软件的路,这使得它成为作实时执行绪的理想选择。也就是说,如果你想要执行限时(time critical)的工作,你就应该使用Win32。MFC背负了C++带来的包袱,因此有点慢。

本文件内描述的另外一个选择.NET Compact Framework,会因为将微软中介语言(Microsoft Intermediate Language , MSIL)转换成原生指令集的这个动作而造成延迟。这只会在第一次将程序代码加载内存时发生,原来就存内存内的原生程序代码可被重复使用。此外,资源回收器(Garbage Collector)也有可能会在错误的时间执行,导致在限时程序代码中造成不能预期的延迟。

Win32同时也是兼容性最高的API。只要可以在Windows https://www.docsj.com/doc/6b2036107.html,内完成的东西,一定也可以在Win32 API内完成。甚至MFC的死忠拥护者也知道当某一功能在MFC内无法支持时,他们可以依赖Win32 API来完成。在这种情况中,全域运算子:「::」是MFC程序设计师最好的朋友。

虽然.NET内并没有全域运算子,.NET Compact Framework还是可以在需要的时候呼叫到Win32的函式。与MFC不同的是,在.NET有管理的部分与Win32未受管理的部分之间呼叫需要一些额外的支出,例如启动不同的平台(P/Invoke)。因此你从.NET Compact Framework拿取Win32函式时,必需要谨慎考虑。

因为Win32不需要执行期间程序,所以它也是一个最广泛被支持的API。如果你想写个可以在任何Windows CE平台上面跑的程序,Win32这条路准没错。如果

你想写个可以在各种不种平台间执行的应用程序,你就一定要使用Win32。我们同时也强烈建议您在写任何扩充操作系统的程序(例如装置驱动程序)时,记得使用Win32。

操作系统扩充装置

Win32对于某些组成因子来说是最好的抉择,特别是在想要支持范围广大的平台,但又不知道特定的执行期间程序是否会出现时。表格二陈列这些操作系统必要的扩充装置。

表格二建议使用Win32的组成因子

撰写Win32程序的挑战

Win32被视为是Win16的升级版。Win16跟微软开发的第一个图形使用者接口Windows 1.01同时出现。在那个时候,设计的焦点是放在作出一个方便使用的使用者界面即可。当时大部分计算机的使用者接口都是以字符为基础,而Windows 1.01成功的在1985年11月正式出线。苹果计算机的麦金塔比Windows

1.01稍微早一点点,在1984年1月启用。

Windows 1.01图形引擎(GDI)开发团队中穆林埃勒(Marlin Eller)曾表示:「虽然提高方便性是Windows 1.01着重的焦点,但是对于增加程序设计接口的便利性这点却不太获得重视,这个结果就是一个突变且前后不协调的API。」在很多情形下,参数栏都是空白,以便将来增加新的用途。许多函式也在没有解释的情况下就请你输入NULL或是零。

最明显的就是这两个常常要用到的函式:RegisterClass及CreateWindow。前者要你将数据填入一个数据结构并传送这个地址,后者却是要你将所有的数据以一长串的参数传入。这种前后不配合的例子在Win32内一再的出现,造成了难学、难懂又难除错的Win32。

Win32:程序化的程序设计接口

Win16及Win32 基本上都是C的程序设计接口,因为C++是在它们之后好久才出现的。因为这个缘故,它们并不支持许多程序设计师视为理所当然的功能,例如函式多载化。换言之,Win16跟Win32是程序导向的程序设计接口。在C 及汇编语言建立的API中,不会有类别或继承的功能。

这些API最棒的地方在于它们是以对象为基础(object-based),而非对象导向的。会用这个术语是因为这个API广泛的运用了将数据包装在对象内的观念,并且里面有许多可以建立系统对象并回传控制柄(handle)的函式。例如你可以用CreateWindow这个函式来建立一个窗口,并回传窗口控制柄(window handle, HWND)。接下来你就可以藉由将控制柄传入函式的方式来移动,改变大小,隐藏,显示及删除窗口。事实上,最后一个删除窗口的动作是Win32 API的一个核心特性,而这个特性很容易让你写出容易漏失内存的程序。

如果你曾经当过管理者,你一定知道指派任务的重要。不管你是否曾分派过任务给人,你一定有过被分派任务的经验。这就描述了Win32管理系统对象的方法,因为这个任务是指派给你:一个程序设计师。

应用程序必需创造一个对象窗口,目录选单(menu),对话盒,控制件,笔刷,字型等等以便能使用Win32。每当这个时候,内存就会被配置。每个程序都要摧毁它建造出来的对象以防内存漏失。若无法释放内存空间,就会发生每个软件的恶梦:内存漏失(memory leak)。如果有太多的内存漏失,无论是桌上型或是Windows https://www.docsj.com/doc/6b2036107.html,甚至是其它的操作系统都会当掉。

操作系统其实是有能力自动清除对象的,但是只有当Win32程序当掉的时候作这件事情才安全。不然,如果想要让一个程序执行很长的时间,就必须经过全盘的测试以确定它有自己清除对象的能力。

然而,现在已有种可以减轻痛苦的良药。Entrek公司开发出的CODESNITCH(https://www.docsj.com/doc/6b2036107.html,)能够追踪并回报内存漏失。它会告诉你造成内存漏失的对象类型以及程序代码行数。CODESNITCH以猜测来取代真正追踪内存漏失这件麻烦事。

微软基础类别库

(The Microsoft Foundation Class Library, MFC)

当Win32发行后,程序设计师们还是努力的想创造出更好用的接口。MFC就是其中一个努力的结果,于1992年正式启用。

MFC被建造在Win32 API的上层。它对Win32程序设计师来说,是很容易上手的。因为它主要用户群就是用过Win32后希望找到更好选择的人。因为这个原因,MFC命名的规则都延续自Win32。例如在绘图函式中,MFC使用了跟Win32一样名字的ExtTextOut、Rectangle以及BitBlt。大多数的时候,MFC内与Win32对等的函式是真的是用呼叫Win32做出来的。MFC比Win32还对象导向化,同时它也改善了Win32前后不同调的状况。例如Win16的MoveTo函数搬到Win32改叫做MoveToEx,但在Windows https://www.docsj.com/doc/6b2036107.html,根本没有这个函数。MFC会帮你处理细节,因此只要打上MoveTo即可。MFC提供了在不同平台间的原始程序代码可移植性。

对象导向方法的好处

MFC有个凌驾Win32的关键,那就是对象导向程序设计步骤。传统上就是指它可以支持继承,封装及多型。

MFC内可使用继承,其内的类别继承树更是庞大。就像在其它对象导向设计环境里,你可以从MFC基本类别出发来建造属于自己的独特类别。例如CWnd 是每种窗口的基本类别;CView是专门给Document/View的窗口类别;CSrollView是CView的可拉式版本。

MFC的设计也支持了封装的功能。最基本的MFC类别将Win32的对象包装起来:CWnd包装Win32窗口、CDC包装Win32 DC、CListBox包装Win32 清单方块(list box)等等。MFC是以Win32为基础,因为都采用了跟Win32很像的名字以便惯用Win32的程序设计师使用。

多型(C++中支持)是指可用不同形式实作出同一方法的能力。MFC桌上型版本中也广泛的使用这项功能,例如CDC::TextOut有两个拥有不同参数的版本。然而在Windows https://www.docsj.com/doc/6b2036107.html,并不支持这项功能,因为相同函数若版本太多会占用过多的空间。在Window https://www.docsj.com/doc/6b2036107.html,执行的MFC亦奉行Window https://www.docsj.com/doc/6b2036107.html,的圭臬:让东西越少越好以保留更多的内存空间。

Document/View结构是个常常跟MFC有关联的基础模型。虽然你并不需要严格地遵照这个模型的规范,但不遵守规范的时候会需要剔除一些东西。Document/View背后的基本想法就是:使用者会想建立、编辑、写入磁盘或从内存读出一份数据(亦即文件),而这份数据可以不同的面貌(view)呈现给使用者。当你在Embedded Visual C++中使用开新计划精灵(New Project Wizard)时就能看到这种结构。你可以在对话式及Document/View式的MFC应用程序中做个抉择,但是运用Document/View最简单的作法还是以对话式为基础的。

另一个常在类别库出现的是容器类别(container class),此外MFC还拥有数组、表以及对象地图。你可以用容器类别来聚集所有以CObject为来源的类别。若你想得到和在Win32内一样的帮助,那你就必须自己写程序代码。.NET Compact Framework提供了比MFC更棒的容器类别供你使用。

MFC在历史上曾经被那些想要在桌上型计算机建造应用程序的C++程序设计师们视为第一选择。它在使用者界面程序设计以及容器类别的使用上都给了我们很大的帮助,甚至还能支持所属操作系统的核心功能。例如,MFC为专在Windows https://www.docsj.com/doc/6b2036107.html,上使用的CCeDBDatabase 以及CCeDBProp提供了专属的类别。MFC 只支持有在所属操作系统内出现的功能,若操作系统没有提供这项服务,那就表示MFC也不会支持它。例如Windows https://www.docsj.com/doc/6b2036107.html,没有ODBC 这个特色,在MFC 中自然也就不出现了。

MFC的内存管理

既然MFC属于Win32的上层,而内存漏失又是Win32一项令应用程序及驱动程序设计师头痛的问题,那么MFC要如何解决这个问题?建构子及反建构子的出

现为MFC解决了部分的麻烦。对于GDI对象(例如位图bitmap、笔刷、字型、调色板以及所用到的区域等等)来说,在你摧毁MFC对象的同时,底下的GDI

也会被清除。

然而,这些程序并不完美,因此你还是必须跟在用Win32时一样小心翼翼去注意对象是否已经真的被清除。用过MFC的桌上型开发者一定听过AfxDumpMemoryLeaks这个函数。就像名字暗示的,它可以陈列出所有已被配置内存空间但还没被释放的对象。唯一的问题是,这个函数并没有出现在Windows https://www.docsj.com/doc/6b2036107.html,版本的MFC…好险Entrek's CODESNITCH弥补了这个严重的问题。

.NET Compact Framework

.NET Compact Framework跟在Windows CE. NET上的Win32及MFC一样,都是其桌上型版本(.NET Framework)的子集合。.NET Compact Framework代表了下一个进化的阶段以及更精练的程序设计接口。.NET Framework.和它难兄难弟NET Compact Framework的出现解决了长久以来困扰Win32及MFC使用者的问题。当最终版正式启用后,它将会支持Pocket PC、Pocket PC 2002以及所有恰当以Windows https://www.docsj.com/doc/6b2036107.html,为基础的平台。

.NET Compact Framework:设计良好的API

.NET Compact Framework是个设计良好的API。跟MFC一样,都是对象导向式的,因此所有你需要的东西都包含在类别里。它之所以可以提供MFC没有的服务,是因为名称领域(namespace)的关系。虽然C++支持名称领域,但MFC并没有使用它们。在.NET Compact Framework里使用名称领域可以帮助组织API内的各项元素,以便在API内找到各种不同的功能。从使用者接口设计的行话来说,好的设计就反应在所有的元素都是可以找到的(discoverable)。譬如所有.NET Compact Framework支持的绘图功能都被放在System.Drawing这个名称领域中。而这个类别其中的一个成员:图形(Graphics)类别,等同于MFC中的CDC类别。你将会发现System.Drawing中的其它成员也都能输出图形。

另一项良好的设计呈现在容器(container)上。这不仅仅指出.NET Compact Framework有容器类别,更代表容器可被使用在.NET Compact Framework内任何地方。虽然在不同的地方出现,容器都能保有良好的一致性。例如每个Form都有ControlCollection,,ListBox有ObjectCollection, 以及DataSet有

itsDataTableCollection,而这些例子都还只是所有范例中的一小部分。在每个这样的集合中,都有新增、移除以及得到列举子(GetEnumerator)这些方法。高程度的一致性意谓只要你熟悉其中一个集合,其它集合你就可以很轻易的上手。

.NET Compact Framework的内存管理

Win32及MFC都有内存管理的问题,大部分是靠程序设计师自行解决,即使不是全部。当你使用.NET Compact Framework撰写程序代码时,你是在一个内存管理良好的环境下写的。这个事实极为重要,因为「受管理的程序代码」(Managed Code)这个术语会跟.NET Compact Framework同时出现,而「未受管理的程序代码」(Unmanaged Code)就指的是那些不在.NET Compact Framework下撰写的程序代码。「未受管理的程序代码」意思是当你为对象(譬如字节、字符串、窗口对象或绘图对象等)配置内存时,执行期间程序会自动帮你追踪这些对象的动向。这些对象被使用完后,会自动被清除。因为系统有追踪对象的功能,所以它知道你何时使用完对象。它能清楚地纪录堆栈以及被放在堆栈上的对象。当内存所剩无几时,执行期间程序(称为共通语言执行期间程序,common language runtime, CLR)会清查堆栈上的对象,看看哪些是正在被使用的。使用中的对象会被保留,而用过的对象会被Garbage Collector捆起来一同摧毁以释放更多的空间。有Garbage Collector意谓.NET Compact Framework对需限时的程序代码来说,不是个好的选择,因为你无法预测Garbage Collector会在哪时候执行。

Garbage Collector的出现表示在C#这个语言里有新增(New)运算子却没有删除(delete)运算子。你可以把原来花在内存管理上的心思拿去思考如何处理手边的问题。

另一个也能建造出.NET Compact Framework的语言:Visual Basic .NET也与C#一样有Garbage Collector。使用Visual Basic 6的程序设计师将会很高兴听到Visual https://www.docsj.com/doc/6b2036107.html,在Visual Basic 6下一样有新增运算子。而在他们了解到他们只有一种而不是两种内存配置运算子(没有CreateObject函式)后,他们将会更开心。既然这些对象的出现已没有必要,自然就消失的不露痕迹。

其它特色

.NET Compact Framework的类别集合(collection)跟MFC的类别库一样,能在应用程序开发上提供很大的帮助。就像先前所提到的,.NET Compact Framework 用类别集合的某些部分来整合窗体内的控制、List box内的元素以及https://www.docsj.com/doc/6b2036107.html,

类别内的数据库组件。换句话说,这些类别是设计来让你的工作做的更好。如果你曾经使用.NET Compact Framework的桌上型版本.NET Framework,你将会发现大部分但不是全部的类别被放进.NET Compact Framewor k里。被忽略的类别包括Queues以及SortedList。而被包含的功能有数组、数组列表(array list)、杂凑表以及堆栈。

.NET Compact Framework在服务数据库这方面经验丰富,它支持原本在桌上型版本的https://www.docsj.com/doc/6b2036107.html,类别的子集合。https://www.docsj.com/doc/6b2036107.html,有个建在内存内的表(DataTable),而这个表与控制使用者接口有密切的关系。任何表上的改变都会反应在控制上,反之亦然。你也可以与外在的数据库作连结,例如数据提供者(Data Provider)、SQL服务器,或任何Windows https://www.docsj.com/doc/6b2036107.html,的原生数据库。这些数据都能被穿插到XML内,因此若要与任何以XML为基础的协议(例如SOAP)互动,.NET Compact Framework会是个很棒的选择。

.NET Compact Framework使与执行在网络服务器的SOAP基础网站服务互动变的容易。网站服务是.NET整合的一部份,它允许你越过HTTP协议对网站服务提供者作函式呼叫。虽然越过网络的呼叫函式并不是什么新鲜事,但这个被.NET 网络服务(Web Services)使用的机制却是。它取代了低阶对低阶的socket 呼叫、特定的低阶RPC程序代码以及DCOM远程接口。当你在呼叫.NET 网站服务时,感觉起来就像你平常在呼叫本地建造的对象一样。

以下是以C# 呼叫网站服务的例子:

paulyao.HelloServer serv = new paulyao.HelloServer();

MessageBox.Show(serv.HelloWorld(), "Say");

这个例子中,网站服务被放在一个叫做paulyao的服务器中。而此类别的名字就叫HelloServer。在你在近端建造一个实体后,你就可以呼叫成员函式HelloWorld,它会回传字符串:Hello World。虽然这是一个非常简单的例子,它却说明了呼叫.NET网站服务的函式是多么容易的事。更重要的是,建立网站服务的客户端是由.NET Compact Framewor k支援的。

.NET Compact Framework的可移植性

.NET Compact Framework的另一个好处就是它的执行档具有可移植性。这与Win32及MFC是非常不同的,因为它们都会因计算机种类不同而有不一样的执行档。这两个API也具有可移植性,但是在原始码阶段。Win32或MFC建立出

的二进制执行文件会包含各种机器的指令(例如x86、进阶精简指令集机器ARM、MIPS、SH3、SH4等等)。

相反的,.NET Compact Framework的执行档却有真正可携的机器指令集,它藉由利用PE档案形式(所有以Win32为基础的系统以及Windows所有版本的共同标准)当作格式来达到目的。这些执行文件使用微软中间语言(MSIL)来取代任何特定的指令。当呈到欧洲计算机制造者协会(European Computer Manufacturers Association ECMA)的标准团体时,它被叫做共通指令语言(Common Instruction Language CIL)。任何为了.NET Compact Framework而以上述这两种语言撰写的执行文件皆可在以Windows https://www.docsj.com/doc/6b2036107.html,为基础并装设有执行期间程序的系统下执行。

.NET Compact Framework的短处

跟MFC一样,.NET Compact Framework需要一个执行期间链接库,其实不只一个,是一组。我们预期这些链接库跑过的足迹最多占掉2MB的空间,但是这对某些内存很少的装置来说,还是太贵了。

另外一个.NET Compact Framework需要处理的是潜在的效率问题。将MSIL/CIL 转换成原生程序代码需要花上一些时间。这种延迟对需要实时处理的应用程序来讲可能变成一个大问题。在大多数的情况下,需限时的工作会由一个执行Win32程序代码的执行绪来负责,而它会有自己的动态连结函式库。毕竟实时工作是装置驱动程序以及其它低阶程序代码主要的工作范围。.NET Compact Framework

在建造使用者接口、应用程序绘图以及连结数据库跟网站服务这些领域上特别有用。如果你正在做一个需要限时的应用程序,用.NET Compact Framework开发使用者接口然后以Win32原生动态数据库处理实时执行绪这种方法会同时使用到两种API的优点。

在.NET开发过程中,COM(Component Object Model)变成类似遗产的技术。COM 在桌上型以及部分的Windows CE .NET上还是被大量的支持。然而,.NET还是以它「受管理的程序代码」(managed code)、增加的安全性以及MSIL/CIL指令集可移植性取代了 COM成为微软技术的核心走向。在十年前,COM跟Win32是微软软件技术的中坚份子。随着.NET的到来,COM再也不是核心技术了。桌上型的.NET Framework还是可以利用与「未受管理的程序代码」相互操作的技术支持COM,以便能在分布式内存上节省空间。.NET Compact Framework并不直接支持与COM组成因子的双向操作,但可透过C语言呼叫的Win32动态连结库来互动。

.NET Compact Framework以使用者图形接口为导向,并深深的依赖GWES(图形、窗口以及事件子系统Graphical,Windowing and Event Subsystem)来操作。这意味着.NET Compact Framework需要在一个以屏幕显示为基础(IABASE)的平台上执行,在无头(HLBASE)装置上并不支持。对于平台建造开发者(Platform Builder developer)而言,这也表示了.NET Compact Framework并不支持「媒体家电Media Appliance」, 「居家用匝道器Residential Gateway」或是「小型操作系统的核心程序Tiny Kernel configuration」。这个事实造成最大的影响是任何无头装置必需要用SOAP 2.0来取代.NET Compact Framework建造网站服务客户端。

结语

总结地来说,我们可以参考下列各种不同API间的比较来决定该使用哪种API:

Win32 API是最小且最具可移植性的API。若你使用平台开发者(Platform Builder)来建造HLBASE的无头平台,那么Win32是最合理的选择。若你打算以装置驱动程序、使用者接口延伸、软件输入面板或控制面板applet来扩充操作系统,就应该选择Win32。若你正在建造一个需要实时处理的系统,例如一个每次都能在10毫秒内反应的硬件,Win32更是不二的抉择。更重要的是,即是你选择了Win32以外的API,你还是会用到大多数程序设计师都熟悉的Win32,因为MFC以及.NET Compact Framework总有要用到底层Win32来作一些低阶功能的时候。

MFC是建造可以编辑及观看数据的应用程序的一个很好的工具,因为它有内建document/view结构(有时被称作model/view形式)的优势。当你想要一组可以用对象导向方法来驯服底层Win32 API的类别时,MFC也是个很好的伴侣。若你想要更广泛的使用已存在的微软ActiveX?及COM组成因子,MFC是唯一有内建与COM结构整合机制的对象导向式框架。MFC原始程序代码的存在表示当你需要除错时,你可以深入MFC底层的Win32追踪错误。这是个可以帮助你在使用MFC时学习Win32的无价宝贝。

我们还有.NET Compact Framework这个选择,它用更多的容器类别以及更坚固的资源回收器(garbage collector)来提供使用者比MFC更好的对象导向结

构。.NET Compact Framework靠着MSIL/CIL可携式指令集建造比Win32及MFC 执行档更具可移植性的执行档。.NET Compact Framework在.NET的世界中是个很棒的玩家,它强力的支援.NET网站服务、XML的处理,还能透过https://www.docsj.com/doc/6b2036107.html, 取得数据库。它同时也能让使用者在两种程序语言:C#以及Visual Basic .NET(一个能将两个执行文件天衣无缝整合起来的语言)中作一选择。

创业孵化园工作总结

创业孵化园工作总结 XXX创业孵化基地由XXX、XXX、XXX共同建设成立的,是一个为以地方新兴文化产业“XXX”为主的企业提供可租用场地、政府扶持、共用支援服务的商业发展服务生态园。根据基地“半年完成基地设施及配套,一年内投入使用,二年初显成效,三年形成良性循环。”的原则,现将一年来的工作总结如下: 一、加强基地的组织领导 为了更好的给创业孵化基地入驻户提供服务,基地成立了管理服务公司,由管理服务公司负责孵化基地的日常管理,对进驻单位进行指导。 1、每季度不少于一次的走访,了解入驻户的生产经营情况; 2、为入驻户解决创业初期的房屋装修、人员招聘、外协配套等各类问题; 3、对入驻户的服务,各项扶持政策的指导和咨询,协助办理工商注册、税务登记、银行开户等手续。 4、做好孵化基地的培训服务工作,开展了XXX方面的一系列的培训。 二、加强基地人员的自身建设 1、加强创业孵化基地的队伍建设,开展了各类学习培训,提高了全体工作人员的业务素质和工作水平,进一步提高全体工作人员的服务质量和办事效率。 2、抓好廉政建设和文明创建工作,配合做好文明城市创建工作,做好孵化基地区的环境整治和已损坏公共设施的修复工作。 三、抓好基地的发展 1、基地原有入驻户XX户,由于各种因素,今年的招商工作面临不少实际困难。面对不利形势,我们积极拓展渠道,全力做好基地招租工作,大力引进需要入驻的商户。到目前为止,又新增XX户入驻户。 2、根据入驻户的意见、建议结合XXX的环境整治工作,我们对孵化基地所在的区域自然村等地按照“XXXXXX”原则进行了村庄环境整治的改造。(包 括古式门窗套、古式花窗格改造、木质空调外机壳改造、店广告牌改造、木桥、门楼修缮等) 现在创业孵化基地已入住30多户,提供了近200个就业岗位,成了一条产业链,有效地解决了本村部分失地农民的就业问题,使得周边群众得到了实惠。同时充分发挥了以XXX

操作系统知识点整理

第一章操作系统引论 操作系统功能: 1. 资源管理:协调、管理计算机的软、硬件资源,提高其利用率。 2. 用户角度:为用户提供使用计算机的环境和服务。 操作系统特征:1.并发性:指两个或多个事件在同一时间间隔内发生。 2.共享性:资源可供内存中多个并发执行的进程(线程)共同使用 3.虚拟性:是指通过某种技术把一个物理实体变为若干个逻辑上的对应物 在操作系统中,虚拟的实现主要是通过分时使用的方法。 4.异步性:进程是以人们不可预知的速度向前推进,此即进程的异步性 客户/服务器模式的优点: 1.提高了系统的灵活性和可扩充性 2.提高了OS的可靠性 3.可运行于分布式系统中 微内核的基本功能: 进程管理、进程间通信、存储器管理、低级I/O功能。 第二章进程 程序和进程区别:程序是静止的,进程是动态的,进程包括程序和程序处理的对象 程序顺序执行:顺序性,封闭性,可再现性 程序并发执行:间断性,无封闭性,可再现性 进程:1.进程是可并发执行的程序的一次执行过程; 2.是系统进行资源分配和调度的一个独立的基本单位和实体; 3.是一个动态的概念。 进程的特征: 1.动态性: 进程是程序的一次执行过程具有生命期; 它可以由系统创建并独立地执行,直至完成而被撤消 2.并发性; 3.独立性; 4.异步性; 进程的基本状态: 1.执行状态; 2.就绪状态; 3.阻塞状态; 进程控制块PCB:记录和描述进程的动态特性,描述进程的执行情况和状态变化。 是进程存在的唯一标识。 进程运行状态: 1.系统态(核心态,管态)具有较高的访问权,可访问核心模块。 2.用户态(目态)限制访问权 进程间的约束关系: 1.互斥关系 进程之间由于竞争使用共享资源而产生的相互约束的关系。

安装操作系统的步骤

安装操作系统的步骤::: 一】 . XP操作系统的安装 操作系统好比是一个舞台,只有建好了它,各种硬件和软件才能相互配合、相互作用地进行表演而又不产生相互的干扰和冲突;它又象导演,指挥整个剧组有条不紊地工作。 〔1〕.如何设置从光盘起动 当要从光盘上进行系统安装时,就必须保证电脑支持可以从光盘来启动,否则,必须进行以下设置: 1.)开机,在屏幕左下角出现反亮“Del”时,迅速按下小键盘处的Del键,随后即进入了BIOS界面; 2.)将光标移动到BIOS表格第一列的第二项“Advanced BIOS Features”上,按回车键“Enter”即进入下一层列表; 3.)用↑↓键选择光标到“First Boot Device”项,按回车进入下一层列表,分别代表了不同的启动设备,用↑↓键将光标定在“CDROM”项上,按回车键回到上一层列表; 4.)接按F10键,则出现一行红框,最后一个是闪动着的“Y”字母,再按回车键退出,这样就设置成了支持光盘启动;此时电脑将重启; 各种电脑的BIOS进入方法可能不同,设置或有差别,但基本大同小异,一般应参看主板说明书;(注:在进行以上第4步操作前,应该先打开光驱托盘,装入支持光启的系统盘。)〔2〕 .系统的安装 5.)BIOS设定后,重启(当然这时光驱中应放入支持启动的系统光盘),当屏幕上出现press any key boot from CD.._字样时或者选择刚重启时即快速按主键盘区的任意键——如空格键方法,则光驱读取系统光盘上的引导程序并开始进行安装;这步很重要,否则不能启动光盘安装; 6.)启动后出现“欢迎使用安装程序”界面及安装选项,如;全新安装、修复系统等,这里选全新安装! 7.)进入分区选项后,可根据自己的需要或喜好确定分区数和分区大小,一般C盘是操作系统和很多应用程序及各种软件安装的首选,故应适当选择!(注意:如果是同样的系统只进行操作系统的全新安装,则只要重新格式化C盘即可,可不必改动其余分区的大小,这样其它盘中的数据仍然可用。)C盘的格式化可选FAT32文件格式,也可选NTFS文件格式,当然,采用NTFS文件系统格式可节约磁盘空间和提高安全性; 8.)当出现区域和语言设置选项时,选默认即可,接下来出现姓名、单位、产品密钥选项,姓名和单位可以任意输入,但产品密钥--即序列号(HCQ9D-TVCWX-X9QRG-J4B2Y-GR2TT)则必须正确输入,下一步若设置了管理员密码,则必须牢记!因为每次开机都要求输入,输错或不输都进不电脑!也可以选择什么也不输——跳过!(注:此时只有系统自带的几种输入法,一般用shift+ctrl键选择); 9.)日期和时间选北京、重庆、香港时区这项就行了; 10.)网络安装选项时,选默认即可; 注:至此,人为参与安装系统的过程结束,剩下的便自动完成,一般安装结束后系统会重启,这段时间较长,需耐心等待,当出现未重启或淡黄(或淡兰)色屏很长时间而无变化时,可人为强制重启; 〔三〕.驱动程序安装

WinCE操作系统

WinCE操作系统 WinCE操作系统是通用型的嵌入式操作系统,它是一个开放的、可升级的32位嵌入式操作系统,是基于掌上型电脑类的电子设备操作系统,它是精简的Windows 95,Windows CE的图形用户界面相当出色。它1996年开始发布Windows CE 1.0版本,2004年7月发布了Windows CE .NET 5.0版本,目前用得最多的是Windows CE .NET 4.2版本,其发展速度也是很快的,功能上自不必描述,它的主要应用领域有PDA市场、Pcket PC、Smartphone、工业控制、医疗等。 就WinCE来讲,你无法买到WinCE这个操作系统,你买到的是Platform Builder for https://www.docsj.com/doc/6b2036107.html, 4.2的集成开发环境,我们也简称为PB,利用它你可以剪裁和定制出一个符合你自己需要的https://www.docsj.com/doc/6b2036107.html, 4.2的操作系统,因此,我们说的操作系统实际上完全是由自己定制出来的,这就是嵌入式操作系统最大的特点。 Windows CE具有模块化、结构化和基于Win32应用程序接口和与处理器无关等特点。Windows CE不仅继承了传统的Windows图形界面,并且在Windows CE平台上可以使用Windows 95/98上的编程工具(如Visual Basic、Visual C++等)、使用同样的函数、使用同样的界面风格,使绝大多数的应用软件只需简单的修改和移植就可以在Windows CE平台上继续使用。Windows CE并非是专为单一装置设计的,所以微软为旗下采用Windows CE作业系统的产品大致分为三条产品线,Pocket PC(掌上电脑)、Handheld PC(手持设备)及Auto PC。 WindowsCE版本主要有1.0、2.0、3.0、4.0、4.2、5.0 和6.0 WINCE1.0是一种基于Windows95的操作系统,其实就是单色的Windows95简化版本。技术支持、直接资助等手段聚集了大量合作厂商,使WinCE类的PDA 阵容越来越强大。 WinCE2.0不仅比CE1.0快的多,而且的彩色显示,又众多新型PDA采用新的WinCE2.0系统,大有取代Pilot的趋势,成为PDA操作系统新的标准。尽管CE2.0仍然要比Pilot的操作系统需要的空间要大的多,但它具有Windows的界面,会用PC的人小编估计没有多少人不会使用微软的操作系统。 WinCE3.0是微软的Windows Compact Edition,是一个通用版本,并不针对掌上产品,标准PC、家电和工控设备上也可以安装运行,但要做许多客户化工作,当然也可以做掌上电脑。WinCE3.0把Pocket Word和Pocket Excel等一些日常所需的办公软件的袖珍版装了进去Pocket PC,同时在娱乐方面的性能做很大的加强。 https://www.docsj.com/doc/6b2036107.html,(即WinCE 4.0)是微软于2002年1月份推出的首个以.Net为名的操作系统,从名字上我们就可以知道它是微软的.net的一部分。https://www.docsj.com/doc/6b2036107.html,是WinCE3.0的升级,同时还加入.Net Framework精简版,支持蓝牙和.Net应用程序开发。 https://www.docsj.com/doc/6b2036107.html, 4.2是https://www.docsj.com/doc/6b2036107.html, 4.0/4.1的升级版,对Windows CE先前版本的强大功能进行了进一步的扩充和丰富,基于其开发的设备将从这些微小但重要的变化中获得更好的性能和更强的Windows集成功能。微软在WinCE4.2版时曾提供开放源代码,不过只针对研究单位,而程序代码较少,为200万行。WinCE5.0在2004年5月份推出,微软宣布WinCE5.0扩大开放程序源代码。在这个开放源代码计划授权下,微软开放250万行源代码程序作为评估套件(evaluationkit)。凡是个人、厂商都可以下载这些源代码加以修改使用,未来厂商OEM时,则再依执行时期(Run-time)授权,支付Win CE5.0核心每台机器3美元的授权费用,这也是微软第一个提供商业用途衍生授权的操作系统。

孵化基地工作总结

孵化基地工作总结2009 年,陕 西省人力资源和社会保障厅将我市确定为省级创建创业型城市。这是我市统筹城乡一体化发展,实现充分就业,保障经济又好又快发展的重要契机。在2010 年11 月25 日,咸阳市政府召开了创建省级创业型城市工作电视电话会议,主要任务是贯彻落实全省创业型城市创建工作现场会议精神,部署安排我市创建工作各项任务,要求我市创建省级创业型城市必须按照实施“67311工程”的思路开展工作,即从建立六个体系入手,努力创建七类工作载体,整合三类培训资源,建立一个创业项目库,成立专家志愿团,全方位推动创建工作向纵深发展。六个体系入手,根据国家创建工作的相关我们首先从建立政策制定相应的创建省级创业型城市的文件。其次我们创建创业孵化基地,搭建创业平台。为了做好创建工作,我们根据咸阳市政府召开的创建省级创业型城市工作电视电话会议精神要求,制定了《咸阳市创业孵化基地建设工作指导意

见》,根据文件精神及要求,咸阳市创业指导中心用了半年时间对咸阳市进行了认真的考察论证,多方求证,同时根据咸阳市地域特色和经济实际情况,目前初步认定了四个类型的创业孵化基地、十个创业示范企业、十户创业示范户。同时制定了《关于确定市本级创业孵化基地创业示范企业创业示范户和给予其场地租金补贴的意见》、《咸阳市确认创业孵化基地协议》、《咸阳市确认创业示范企业协议》因以上文件正在审批中,所以四个类型的创业孵化基地、十个创业示范企业、十户创业示范户待批中。一是建立了高校毕业生创业孵化基地。高校毕业生是创业的主体和生力军,他们思想前卫,知识层次高,创业意识浓。但由于受场地和资金的限制,使其创业受到一定的限制,遇到了很多困惑。为了解决这一问题,咸阳市建立一定规模的高校毕业生创业孵化基地,免费为高校毕业生提供办公场所,并给予资金支持,帮助和引导高校毕业生成功创业。创建高校毕业生创业孵化基地,又因为咸阳高校比较多,例如有; 陕西科技大学、陕西中医学院、西藏民族学院、咸阳师范学

计算机操作系统复习知识点汇总(2)

《计算机操作系统》复习大纲 第一章绪论 1. 掌握用户程序的主要处理阶段; 1. 掌握进程与程序的区别和关系; 3.掌握分页存储管理技术的实现思想; 2. 掌握进程的基本状态及其变化; 4.掌握分段存储管理技术的实现思想; 6. 掌握临界资源、临界区; 2. 掌握常用设备分配技术;7. 掌握信号量,PV 操作的动作, 3. 掌握使用缓冲技术的目的;8. 掌握进程间简单同步与互斥的实现。 第六章文件管理 带权周转时间; 4. 掌握死锁;产生死锁的必要条件;死锁预 2.掌握系统调用的概念、类型和实施过程。 1.掌握操作系统的基本概念、主要功能、 第四章存储器管理 2.理解分时、实时系统的原理; 2.掌握存储器管理的功能;有关地址、重定 第二章进程管理 位、虚拟存储器、分页、分段等概念; 3.掌握进程控制块的作用; 4.掌握进程的同步与互斥; 5.掌握多道程序设计概念; 5.掌握页面置换算法。 第五章设备管理 1.掌握设备管理功能; 本特征、主要类型; 第三章处理机调度 1.掌握文件、文件系统的概念、文件的逻辑 1.掌握作业调度和进程调度的功能; 组织和物理组织的概念; 2.掌握简单的调度算法:先来先服务法、时 2.掌握目录和目录结构;路径名和文件链 间片轮转法、优先级法; 接; 3. 掌握评价调度算法的指标: 吞吐量、周转 3.掌握文件的存取控制; 对文件和目录的主 时间、平均周转时间、带权周转时间和平均 要操作 防的基本思想和可行的解决办法; 第七章操作系统接口 5.掌握进程的安全序列, 死锁与安全序列的 1.掌握操作系统接口的种类; 关系;

计算机操作系统复习知识点汇总 第一章 1、 操作系统的定义、目标、作用 操作系统是配置在计算机硬件上的第一层软件, 设计现代OS 的主要目标是:方便性,有效性, OS 的作用可表现为: a. OS 作为用户与计算机硬件系统之间的接口; b. OS 作为计算机系统资源的管理者;(资源管理的 观点) c. OS 实现了对计算机资源的抽象. 2、 脱机输入输出方式和SPOOLing 系统(假脱机或联机输入输出方式)的联系 和区别 脱机输入输出技术(Off-Line I/O)是为了解决人机矛盾及CPU 的高速性和I/O 设备 低速性间的矛盾而提出的.它减少了 CPU 的空闲等待时间,提高了 I/O 速度. 由于程序和数据的输入和输出都是在外围机的控制下完成的, 或者说,它们 是在脱离主机的情况下进行的,故称为脱机输入输出方式;反之,在主机的直接 控制下进行输入输出的方式称为联机( 假脱机输入输出技术也提高了 I/O 备,实现了虚拟设备功能。 3、 多道批处理系统需要解决的问题 处理机管理问题、内存管理问题、 管理问题 4 OS 具有哪几个基本特征?它的 最基本特征是什么? a. 并发性(Concurrenee)共享性(Sharing)虚拟性(Virtual),异步性(Asynchronism). b. 其中最基本特征是并发和共享. c. 并发特征是操作系统最重要的特征,其它三个特征都是以并发特征为前提的。 5、并行和并发 并行性和并发性是既相似又有区别的两个概念, 并行性是指两个或多个事 件 在同一时刻发生;而并发性是指两个或多少个事件在同一时间间隔内发生。 6、 操作系统的主要功能,各主要功能下的扩充功「 a. 处理机管理功能: 进程控制,进程同步,进程通信和调度. b. 存储管理功能: 内存分配,内存保护,地址映像和内存扩充等 c. 设备管理功能: 缓冲管理,设备分配和设备处理,以及虚拟设备等 d. 文件管理功能: 对文件存储空间的管理,目录管理,文件的读,写管理以及檔的共享和保 护 7、 操作系统与用户之间的接口 a. 用户接口:它是提供给用户使用的接口,用户可通过该接口取得操作系统 的服务 是对硬件系统的首次扩充。 可扩充性和开放性 . (一般用户的观点) SPOOLing)输入输出方式 的速度,同时还将独占设备改造为共享设 I/O 设备管理问题、文件管理问题、作业

windowsce操作系统简述

Windows CE 百科名片 WindowsCE是微软公司嵌入式、移动计算平台的基础,它是一个开放的、可升级的32位嵌入式操作系统,是基于掌上型电脑类的电子设备操作系统,它是精简的Windows 95,Windows CE的图形用户界面相当出色。 简介 Windows CE操作系统是Windows家族中的成员,为专门设计给掌上电脑(HPCs)以及嵌入式设备所使用的系统环境。这样的操作系统可使完整的可移动技术与现有的Windows桌面技术整合工作。Windows CE被设计成针对小型设备(它是典型的拥有有限内存的无磁盘系统)的通用操作系统, Windows CE可以通过设计一层位于内核和硬件之间代码来用设定硬件平台,这即是众所周知的硬件抽象层(HAL)(在以前解释时,这被称为OEMC(原始设备制造)适应层,即OAL;内核压缩层,即KAL。以免与微软的Windows NT操作系统的HAL混淆)。 与其它的微软Windows操作系统不同,Windows CE并不是代表一个采用相同标准的对所有平台都适用的软件。为了足够灵活以达到适应广泛产品需求,Windows CE可采用不同的标准模式,这就意味着,它能够从一系列软件模式中做出选择,从而使产品得到定制。另外,一些可利用模式也可作为其组成部分,这意味着这些模式能够通过从一套可利用的组份做出选择,从而成为标准模式。通过选择,Windows CE能够达到系统要求的最小模式,从而减少存储脚本和操作系统的运行,也为企业创造更大效益[1]。 Windows CE中的C代表袖珍(Compact)、消费(Consumer)、通信能力(Connectivity)和伴侣(Companion);E代表电子产品(Electronics)。与Windows 95/98、Windows NT不同的是,Windows CE是所有源代码全部由微软自行开发的嵌入式新型操作系统,其操作界面虽来源于Windows 95/98,但Windows CE是基于WIN32 API重新开发、新型的信息设备的平台。Windows CE具有模块化、结构化和基于Win32应用程序接口和与处理器无关等特点。Windows CE不仅继承了传统的Windows图形界面,并且在Windows CE平台上可以使用Windows 95/98上的编程工具(如Visual Basic、Visual C++等)、使用同样的函数、使用同样的界面风格,使绝大多数的应用软件只需简单的修改和移植就可以在

系列服务器windows操作系统安装步骤

IBM X系列服务器Windows操作系统安装步骤

引言 本文介绍采用IBM Server Guide光盘引导安装Windows操作系统,使用IBM Server Guide光盘安装会清除硬盘上的分区和数据,安装前请务必向客户说明,确认是否需要备份数据。 一、工具准备 IBM ServerGuide光盘一张, windows操作系统安装光盘一套(以windows2003为例), IBM ServeRAID Manager 安装光盘一张。 需要注意的是,根据服务器型号不同,所需要的IBM ServerGuide光盘 版本也不同,下面给出两者对应关系,请根据服务器型号选择合适版本。 二、具体安装步骤 1、设置服务器从光驱启动,开机按F1-startup进行设置。 2、用ServerGuide CD光盘启动服务器,光盘启动后,显示如下画面 选择使用本引导盘的语言(注意:此时语言为ServerGuide引导程序语言,与所要安装操作系统无关),出现如下画面,选择English) 3、选择键盘布局以及国家或地区画面,在这里全部选择United States,然后 点击Next 4、出现许可协议界面,阅读许可协议内容,点击I accept继续即可 中文用户可以在Language选项中选择Chinese 阅读中文协议 5、查看概述了解ServerGuide 功能,请在使用前仔细查看相关使用说明,点击Next继续 6、在这里可以选择要安装的操作系统,选择后点击Next 7、列表显示接下来将要做的配置,目前提示要设置日期和时间,点击Next 8、设置正确的日期和时间后点击Next 9、当出现清除硬盘信息界面时,请根据需要选择,如果需要保留已有的阵列信息,请选择Skip this task,但硬盘上的数据和分区仍然会被清除掉,选择clear all hard …会直接清除阵列及硬盘信息,如无特殊要求,我们一般选择第二项clear all hard disk drives and restore servraid to defaults,选择后点击Next继续

从硬盘安装Linux操作系统的方法步骤(精)

从硬盘安装Linux操作系统的方法步骤来源: ChinaUnix博客日期:2007.04.22 18:30(共有0条评论我要评论从硬盘安装Linux操作系统,首先要准备安装包,Linux操作系统的安装包通常是一个或多个ISO镜像文件(一般通过网络下载就可以得到;其次,要通过某种手段启动镜像文件中的系统安装程序;接下来,按照安装程序的提示信息进行安装就可以了。安装过程中,需要指定Linux操作系统的安装位置,这主要涉及硬盘分区的一些知识。综合来看,学习Linux操作系统的安装,关键要学会两点:第一、如何为Linux操作系统准备硬盘空间?第二、如何启动ISO镜像文件中的安装程序。硬盘分区通常,在使用硬盘时,都要进行分区。如果把未分区的硬盘比做一张大白纸,那么分区后的硬盘就相当于这张大白纸被画上了几个大方框。一块硬盘被分成多个分区之后,各分区之间是相对独立的,每个分区都可以有自己的文件格式,例如 FAT16、FAT32、NTFS等等。Linux 操作系统需要的硬盘分区要安装一个操作系统,一般来讲都要为它准备专门的分区。专门,意味着不能与其他操作系统合用一个分区,也意味着不要与用户自己的数据文件合用一个分区,前者是因为不同的操作系统可能需要不同格式的磁盘分区,后者则更多地出于用户数据安全和系统维护方便的考虑。从最低配置角度讲,Linux 操作系统需要一个EXT2或EXT3格式的硬盘分区作为根分区,大小在2~5G就可以。另外还需要一个SWAP 格式的交换分区,大小与内存有关:如果内存在256M以下,交换分区的大小应该是内存的两倍;如果内存在256M以上,交换分区的大小等于内存大小即可。Linux 硬盘分区管理工具在安装Linux 操作系统时,如果选择了手工的分区方式,将启动硬盘分区工具Disk Druid。这个程序是安装程序自带的。下面讨论一下该软件的使用。Linux下硬盘分区的标识在Linux 下用hda、hdb 等来标识不同的硬盘;用hda1、hda2、hda5、hda6 来标识不同的分区。其中,字母a 代表第一块硬盘,b代表第二块硬盘,依次类推。而数字1 代表一块硬盘的第一个分区、2 代表第二个分区,依次类推。1到4 对应的是主分区(Primary Partition)或扩展分区(Extension Partition。从5开始,对应的都是硬盘的逻辑分区(Logical Partition)。一块硬盘即使只有一个主分区,逻辑分区也是从5开始编号的,这点应特别注意。系统上有一块硬盘,名字为/dev/hda,它上面有一个NTFS 格式的主分区hda1 以及

科技孵化器工作总结

2015年清大华创(日照)科技孵化器 工作总结 清大华创(日照)科技孵化器隶属于北京清大华创(日照)科技孵化器置业有限公司,园区总占地673亩。自2009年投入使用以来,在各级政府的领导下,发扬“自强不息,厚德载物”的精神,为社会的发展做出了一定贡献。 园区专门为科技创业者提供研究开发场地、种子资金支持、政策扶持和相关服务;为电子信息、生物医药、新材料、环保、节能等高新技术领域的创业者提供良好的创业环境,促进科技成果的迅速转化,扶持高新技术企业发展,不断孵化高新技术企业和培育优秀企业家的民营综合高科技孵化器。 2015年园区有入驻企业80余家,园区综合利用面积21560平方米。 2015年园区入驻企业完成产值 2.34亿元,入园企业上缴税收1015万元,新创造就业岗位670余个。 园区现已和日照市科协、山东振鲁律师事务所、日照市大洋会计师事务所、北京蒲公英创业园、日照市鑫蓝湾金融服务中心等服务中介机构签订了合作协议,主要提供知识产权申报、科技项目申报、技术成果转移、财务、培训、科技金融等相关服务。为企业解决创业过程中随时出现的难题,积极为企业获得科技创业的融资、担保提供咨询和对接。 清大华创(日照)科技孵化器是一家民营孵化器。为加强管理,完善了制度建设,制定了《园区入孵企业管理制度》、《园区入驻企业评估考核办法》、《园区科技创业种子资金管理办法》、《园区科技创新公共服务平台管理办法》、《园区财务管理办法》、《创业园档案管理办法》等。

图一、园区科技大厦 一、园区基本情况 1.创新创业人才 园区现有日照市科州电子有限公司、日照市奥美娜生物科技有限公司、日照市安维信生物科技有限公司等留学归国硕士以上人员创办的科技企业5家。园内企业职工总数1045人,其中:具有大专以上学历人员有占全部职工的90%以上;从事研究开发人员占全部职工的三分之一以上;科技人员中博士及博士后15人;硕士24人;工程师83人,2015年新入驻企业48家。 2.园区高科技项目和产品 在孵企业及已毕业企业累计共开发高科技产品200多项。累计知识产权受理量为100多项。2015年在孵企业获各类项目资助120余万元。 3.孵化高新技术企业 2015年,2家孵化企业通过国家高新技术企业的认定。 二、公共服务平台建设情况和服务效果 1、园区于2015年7月成立“清大华创·奇迹创客”,并举行了新闻发布会,“奇迹创客”是由清大华创(日照)创业园为早期优秀的创业者及团队搭建的一站式创业服务平台。可向创客人员免费提供办公工位、水电、网络、视频会议室、多媒体会议室等资源,并提供“种子基金”、“人力资源整合”、“孵化器创业服务”、“政策对

WindowsCE编程的十点忠告

Windows CE 编程的十点忠告 最近两周我们花了大部分时间将已有的应用程序移植到Microsoft Windows CE中。一般说来,这个计划不是太难。我们起步于Microsoft Win32代码,当然Windows CE是基于Win32应用程序接口(API)的。有利的是,我们的应用程序(即Raima 数据管理器)有方便的使用接口,并包含一个大约由150个子函数组成的库,这些函数都是由C语言写成,可以用来创建、管理和访问数据库。 按建立应用程序的方式来说,我们原以为将它移植到Windows CE中是一项相对简单的C语言编程练习。然而,我们不久便遇到好些困难。从粗心大意的错误开始,比如在基于Windows NT 的Windows CE仿真器上使用Microsoft Windows NT库,接着又违背Windows CE的编程戒律,如"千万不要给Unicode(国际标准组织10646标准)字符分配奇数内存地址"。 大约有百分之九十的问题或多或少地与Unicode有关。尽管Unicode编程不难,但是,当给单字节字符编写代码时,很容易出错(我有过许多次错误)。 下面这些忠告是根据我们在Windows CE上编写Raima 数据管理器的经验总结出来的,但我相信,在做任何其它Windows CE程序之前,它们都值得借鉴。毕竟大多数Windows开发者,当他们创建第一个Windows CE应用程序时,真正运用的是已掌握的Win32知识。 1. 不要在仿真器上使用Windows NT库 这里所讨论的第一个错误实在太愚蠢了,但我还是陷了进去,也许你也会。当用Microsoft VC++(5.0版)创建一个Windows CE程序时,你会发现,包含路径(include)、库路径(library)、及可执行程序路径被自动调整以匹配反应目标环境的选择。因此,比如说为Windows CE模拟器建立应用程序时,你会发现,include路径没有指向Win32的包含文件(在VC目录下),而是指向Windows CE包含文件(在WCE目录下)。千万别去修改。 由于Windows CE在Windows NT下运行,所以仿真器上运行的程序能够调用任一Windows NT动态链接库(DLL)中的函数,即使这个DLL不是模拟器的成员也一样。显然,这不是很好的事,因为相同的函数也许在手持PC(H/PC)或Windows CE 设备上不可用,而你的软件最终要能在这些设备上运行。 第一次将非Unicode应用程序装入Windows CE仿真器时,你会发现,许多正在使用的函数它都不支持,例如美国国家标准协会(ANSI)定义的字符函数strcpy()。这也许引诱你去链接Windows NT 运行时间库,以便能解决所有问题。 如果你是刚开始用Windows CE编程,可能你能用的包含文件和库文件是明显的。答案就是,你不要采用那些在写普通Win32或非Windows CE程序时使用的包含文件和库文件。 2. 不要混淆TCHARs和bytes 如果你正在Windows CE上写非Unicode应用程序,你或许要将所有的字符串从单个字符(chars)转换为宽字符(widechars)(例如,C变量类型whcar_t)。几乎所有Windows CE支持的Win32和运行时间库函数都要求宽字符变量。Windows 95不支持Unicode,然而,为了使程序代码具有可移植性,你要尽可能采用tchar.h中定义的TCHAR类型,不要直接使用wchar_t。 TCHAR是定义为wchar_t还是char,取决于预处理器的符号UNICODE是否定义。同样,所有有关字符串处理函数的宏,如_tcsncpy宏,它是定义为Unicode函数wcsncpy还是定义为ANSI函数strncpy,取决于UNICODE是否定义。 在现存的Windows应用程序中,有些代码也许暗示字符长为单字节。这在给字符串分配内存时经常用到,例如:

安装操作系统教程

操作系统安装流程 YZF2(001B) —·杨昭飞·— —·Zhophy Young·— 一、启动盘制作。 常用的启动盘有两种:1.刻录盘;2.系统盘。 制作启动盘所用到的软件:UltraISO、电脑电、大白菜、老毛桃等,我用的是电脑店。 1.刻录盘 刻录盘是通过UltraISO软件制作的一种在U盘只有系统文件的启动盘,刻录盘一旦制作完成就不能再随便拷入或删减U盘内的文件,也不能再拷入和删减系统无关的文件,以确保文件的完整性。 2.系统盘 系统盘是把大白菜或者老毛桃软件小系统win PE安装在U盘,使U盘内的小系统具有独立显示的功能。这种启动盘的优点是在不挪用镜像文件的情况下可以随意拷入和删减其他文件,不影响文件的安装。只要存储空间足够,可以当做一般U盘使用。 二、刻录镜像文件。 Ultra软件制作刻录盘流程: (1)(System\启动盘\刻录盘\UltraISO 绿色免费版)解压,双击打开UltraISO_9.6.2.3059.exe,默认或者修改安装路径。安装完成输入注册码激活UltraISO软件。 (2)这里以安装win8系统为例,先制作win8刻录盘。 打开UltraISO软件,然后点击文件---打开---选择win8系统镜像文件(System\系统\win8\cn_windows_8_x86_dvd_915414),确认打开后就能在软件的界面内看到整个镜像文件的信息了。数据无价,先确认文件无误再继续下边的步骤。 接下来开始制作系统安装盘,点击启动---写入硬盘映像。

进入刻录界面后,在硬盘驱动器部分选择要写入的最小4G的U盘,确认无误后点击写入,等待一段时间就行了。

基于WindowsCE系统的模拟时钟设计

基于WindowsCE系统的模拟时钟设计 【摘要】本文介绍了一种基于Windows CE 6.0操作系统的模拟时钟的设计方法,该设计以三星公司的S3C2440为核心,基于MFC编程,实现了钟面上时分秒针的实时显示。本设计编译生成的.exe文件可做为Windows CE系统的一个应用程序使用。 【关键词】ARM;S3C2440;Windows CE;模拟时钟 1.引言 随着科学技术的发展,嵌入式设备广泛应用于商业管理和工业控制等领域。本设计以ARM9嵌入式微处理器S3C2440为核心,基于MFC编程,在开发板的液晶显示屏上显示模拟时钟,实现了时分秒针的实时显示。 2.硬件平台 本设计以ARM9嵌入式微处理器S3C2440开发板为核心,主要利用S3C2440内置的RTC模块,通过读取系统时间来实时绘制时针,实现模拟时钟的实时走动。 3.软件设计 3.1 对话框设计 建立工程之后,在Resource View中设计模拟时钟的界面,选定一个与S3C2440触摸屏相符的对话框界面。模拟时钟的显示用程序实现,在对话框下方放置从Toolbox中选择的控件。本设计总共用到九个控件:对话框控件,显示时分秒的静态文本控件,用于显示数字的动态控件,更改时间的控件和确定控件等。 3.2 程序设计 首先添加一个OnTimer()函数读取系统时间并用作计时器的消息处理函数,用于通知moniDlg类中的画表盘刻度和指针的函数重新绘图。添加设置时间按钮函数,用于导出软键盘,设置时间;确认按钮函数用于关闭软键盘,此时屏幕刷新。 3.2.1 表盘刻度画法 在moniDlg类中添加画表盘刻度的函数。程序创建两种画笔,设置不同的颜色和粗细,来区分整点时刻和分点时刻。 由于S3C2440开发板显示屏默认的原点在左上角,根据S3C2440触摸屏的大小确定圆心位置,这样就确定了表盘的位置,表盘上的刻度都在以圆心为中心的圆环上。其坐标可以通过三角函数推导出来。设圆心坐标为(X,Y),半径为R,表盘上其他点的坐标为(X1,Y1),该点与圆心X轴夹角为A(0~360度),该点坐标为(X1=X+RcosA,Y1=Y+RsinA)。 由于我们习惯上使用逆时针的角度,而表针是顺时针转动,即在S3C2440上,坐标跟我们实际用到的坐标方向不同,所以我们应先算出从12点开始的每个刻度的正余弦值,即有60个数组元素的正余弦数组,为计算每个刻度跟时分秒针在表盘中的位置做准备。校正后的角度值,按顺时针重新排列三角函数值,得到如下正余弦数组: 时钟表盘画法流程图:见图1。 画表盘核心代码: 3.2.2 指针画法 在moniDlg类中添加刻画指针的函数。时分秒针主要用长短和粗细区分,亦

Windows CE系统软件移植流程

Windows CE系统软件移植流程 Windows CE(以下简称CE)是一个可定制的嵌入式操作系统,为了适应不同的硬件平台,需要对BSP、Device Driver、bootloader等进行修改、定制。本文主要讨论在BSP、driver 等已完成的基础上如何移植,关于BSP、driver等的定制在其他文档中详细描述。 Microsoft为定制CE平台提供了一个集成开发工具——Platform Builder(以下简称PB),我们的工作都是利用这个工具完成的。另需注意,本文是以X-Hyper255B开发板为例进行说明的。 1.安装BSP(Board Support Packet) 为了定制CE,BSP是必需的。BSP包括bootloader、kernel、Device driver和configuration。在利用PB生成特定平台的CE之前,必须先安装针对该平台的BSP。例如,在安装完X-Hyper255B开发板的BSP后,在PB的Third Party中会出现它的BSP。 2.为X-Hyper255B定制CE平台 2.1. 创建一个新平台 1.在PB中选择File->New Platform开始“New Platform Wizard”。

2.在BSP列表中选择“X-HYPER255B:ARMV4”。 3.后续步骤按向导的提示进行,比较简单,这里不再赘述。 2.2. 设置平台参数 在生成kernel image之前应该对平台进行一些设置。 1.如下图,右键单击选择“Settings…”(也可选择Platform->Settings)

2.在“Build Options”选择页中选中“Enable Eboot Space in Memory”和“Enable Full Kernel Mode”。 2.3. 生成Kernel Image 1.选择Build->Generate Platform Headers。 2.选择Build->Build Platform。

电脑系统安装步骤图解

系统安装步骤说明: 一、准备工作: 如何重装电脑系统 首先,在启动电脑的时候按住DELETE键进入BIOS,选择Advanced BIOS Features选项,按Enter键进入设置程序。选择First Boot Device 选项,然后按键盘上的Page Up或Page Down键将该项设置为CD-ROM,这样就可以把系统改为光盘启动。 其次,退回到主菜单,保存BIOS设置。(保存方法是按下F10,然后再按Y键即可) 1.准备好Windows XP Professional 简体中文版安装光盘,并检查光驱是否支持自启动。 2.可能的情况下,在运行安装程序前用磁盘扫描程序扫描所有硬盘检查硬盘错误并进行修复,否则安装程序运行时如检查到有硬盘错误即会很麻烦。 3.用纸张记录安装文件的产品密匙(安装序列号)。 4.可能的情况下,用驱动程序备份工具(如:驱动精灵2004 V1.9 Beta.exe)将原Windows XP下的所有驱动程序备份到硬盘上(如∶F:Drive)。最好能记下主板、网卡、显卡等主要硬件的型号及生产厂家,预先下载驱动程序备用。 5.如果你想在安装过程中格式化C盘或D盘(建议安装过程中格式化C盘),请备份C盘或D盘有用的数据。 二、用光盘启动系统: (如果你已经知道方法请转到下一步),重新启动系统并把光驱设为第一启动盘,保存设置并重启。将XP安装光盘放入光驱,重新启动电脑。刚启动时,当出现如下图所示时快速按下回车键,否则不能启动XP系统光盘安装。如果你不知道具体做法请参考与这相同的-->如何进入纯DOS系统: 光盘自启动后,如无意外即可见到安装界面,将出现如下图1所示 查看原图 全中文提示,“要现在安装Windows XP,请按ENTER”,按回车键后,出现如下图2所示

创业孵化园工作总结

XXX创业孵化基地由XXX、XXX、XXX共同建设成立的,是一个为以地方新兴文化产业“XXX为主的企业提供可租用场地、政府扶持、共用支援服务的商业发展服务生态园。 根据基地“半年完成基地设施及配套,一年内投入使用,二年初显成效,三年形成良性循环。 的原则,现将一年来的工作总结如下:一、加强基地的组织领导为了更好的给创业孵化基地入驻户提供服务,基地成立了管理服务公司,由管理服务公司负责孵化基地的日常管理,对进驻单位进行指导。 1、每季度不少于一次的走访,了解入驻户的生产经营情况; 2、为入驻户解决创业初期的房屋装修、人员招聘、外协配套等各类问题; 3、对入驻户的服务,各项扶持政策的指导和咨询,协助办理工商注册、税务登记、银行开户等手续。 4、做好孵化基地的培训服务工作,开展了XXX方面的一系列的培训。 二、加强基地人员的自身建设1、加强创业孵化基地的队伍建设,开展了各类学习培训,提高了全体工作人员的业务素质和工作水平,进一步提高全体工作人员的服务质量和办事效率。 2、抓好廉政建设和文明创建工作,配合做好文明城市创建工作,做好孵化基地区的环境整治和已损坏公共设施的修复工作。 三、抓好基地的发展1、基地原有入驻户XX户,由于各种因素,今年的招商工作面临不少实际困难。

面对不利形势,我们积极拓展渠道,全力做好基地招租工作,大力引进需要入驻的商户。 到目前为止,又新增XX户入驻户。 2、根据入驻户的意见、建议结合XXX的环境整治工作,我们对孵化基地所在的区域自然村等地按照“XXXXXX原则进行了村庄环境整治的改造。 (包括古式门窗套、古式花窗格改造、木质空调外机壳改造、店广告牌改造、木桥、门楼修缮等)现在创业孵化基地已入住30多户,提供了近200个就业岗位,成了一条产业链,有效地解决了本村部分失地农民的就业问题,使得周边群众得到了实惠。 同时充分发挥了以XXX为龙头的一系列产品优势,另一方面,也大大带动了XXX、XXX、XXX产品及果产的发展,接待游客量从前几年的五六十万人次增加到如今近300万人次。 XXX创业孵化基地2012年10月31日附:书写年终总结黄金秘笈年关将近,又到了铺天盖地写总结的时候,为济世救人,笔者特将访遍名师学来的年终总结秘笈奉献出来,希望能给各位同仁以启迪。 要点一:篇幅要够长辛辛苦苦干了一年,业绩如何,关键就看这“总结的分量。 如有字数限制还好,可以照“封顶值去写。 如果没有字数限制可就有点麻烦了,要留心打听一下其它同级单位的篇幅有多长,如此有了参照物,才可“弹无虚发。 否则闷头傻写半天,洋洋洒洒15页,殊不知人家写了20页,在

孵化厂年终工作总结_工作总结.doc

孵化厂年终工作总结_工作总结 霜报寒梅迎春来,回顾总结取其精,今朝虽比去年好,奋起直追赶上游。过去的一年里,我们首先从内部管理和工作绩效考评着手,健全和规范各项制度紧紧围绕从“如何解决影响质量的因素”来展开工作。通过走出去、请进来的方式学习取经,结合本部门实际情况,从根本上转变观念。从干部改革入手,根据员工的特长以优势互补的原则进行班次的组合与分配,合理的调整组织架构和工作部暑。将安全生产放在首位来抓,实行定期对机械设备的检查与维护,及时消除隐患。面对夏天高温的严峻形势,我们沉着应战,抓住关键、灵活掌握、提高全员战斗力,杜绝了事故的发生。以会带训来加强培训工作,营造学习气氛,全员素质得到了不断提高。同时加强了内、外的沟通,利用集体的智慧解决生产实际中的困难。促进了管理水平和产品质量的提高。s0100 04年在公司领导的正确引导下全体员工以积极的心态努力工作、辛勤劳动。基本上完成了预定的各项年度指标,年均出苗率达到92.5%,与去年相比平均提高了1个点左右,但与其它先进孵化厂相比还有差距。因此,我们有必要很好的总结,仔细的去分析。回顾过去、展望未来,我们应奋起直追,争做领头羊。现就具体工作总结如下: 一、生产经营情况: 二、所做的工作: 1.以质量为中心,稳步提升生产成绩。

在质量年里我们一切围绕质量来展开工作:主要表现在对出雏机温、湿度做到了每出一批苗校验一次;保证每十天对孵化机温度进行一次核查;根据季节、天气的变化灵活掌握,适当的调整用温和用湿,确保合理的孵化条件。随时跟踪出苗情况,不断的进行分析和总结,找出存在的问题,及时消除不利因素。同时加强数据管理,提高数据分析能力,在年初采用了图表的形式对生产数据进行对比和分析,及时了解和掌握生产动态。 要保证产品质量首先是要抓好源头质量。针对养户反应鸡苗小死亡率高的现象,我们及时采取措施,与种鸡场沟通推迟开产周龄,对种蛋严格按照标准进行挑选和验收。同时加强对种蛋的管理,对开产蛋实行存放4-6天,使之达到最佳孵化时期。夏天启用空调,冬天放入孵化车间,保证合理的存放条件。 2、加强成本管理,运用图表进行对比与分析,达到降成本之目的。 年初我们将成本意识贯彻到每个员工,在保证质量的前提下厉行节约,让每一分钱都能真正落到实处,每月以图表的形式进行对比、分析,找出突破口,运用新技术、新方法。如:5月份我们对孵化机进行了水温孵化改造,经过半年多时间的使用效果良好,青苗率每月以0.5%的速度增长,鸡苗质量稳定,使用水温孵化平均每天可节约电费500—600元;并严格控制孵化机的空位,杜绝空转现象,提高资源利用率;严格执行新老蛋穿叉入孵,有效的利用温度的互补减少浪费。时时刻刻牢记成本意识,从随手关灯做起,达到真正降成本之目的。 3.坚持以人为本的管理方针,苦练内功,不断提升内部管

相关文档
相关文档 最新文档