dollarsun
驱动牛犊
驱动牛犊
  • 注册日期2007-03-08
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分320分
  • 威望33点
  • 贡献值0点
  • 好评度32点
  • 原创分0分
  • 专家分0分
阅读:1934回复:16

利用驱动实现任务调度的可行性

楼主#
更多 发布于:2007-03-08 21:31
  本人想在Windows下开发一套基于模块化的状态监控软件,主要有采样进程,显示进程,数据处理进程,传输进程和保存进程。由于采样的实施性要求比较高,所以想给采样进程分的时间片多一点,就像多线程下的优先级提高点。现利用驱动做个任务调度,请问各位高手在驱动里做的可信性。
驱网无线,快乐无限
killvxk
论坛版主
论坛版主
  • 注册日期2005-10-03
  • 最后登录2014-04-14
  • 粉丝3
  • 关注1
  • 积分1082分
  • 威望2003点
  • 贡献值0点
  • 好评度1693点
  • 原创分2分
  • 专家分0分
沙发#
发布于:2007-03-08 21:58
可以,如果你有Win代码之后什么都可以了
没有战争就没有进步 X3工作组 为您提供最好的军火
WQXNETQIQI
驱动大牛
驱动大牛
  • 注册日期2006-06-12
  • 最后登录2010-10-26
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望1076点
  • 贡献值0点
  • 好评度895点
  • 原创分1分
  • 专家分0分
板凳#
发布于:2007-03-09 00:45
恩,问题不大,让老V去做吧
驱动开发者 呵呵
dollarsun
驱动牛犊
驱动牛犊
  • 注册日期2007-03-08
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分320分
  • 威望33点
  • 贡献值0点
  • 好评度32点
  • 原创分0分
  • 专家分0分
地板#
发布于:2007-03-10 15:39
能不能给点思路阿~~
驱网无线,快乐无限
nangfeng
驱动牛犊
驱动牛犊
  • 注册日期2006-06-03
  • 最后登录2014-07-23
  • 粉丝0
  • 关注0
  • 积分14分
  • 威望183点
  • 贡献值0点
  • 好评度51点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2007-03-10 15:51
http://bbs.driverdevelop.com/htm_data/87/0703/99456.html

代码都公开了,没啥不可以的,
killvxk
论坛版主
论坛版主
  • 注册日期2005-10-03
  • 最后登录2014-04-14
  • 粉丝3
  • 关注1
  • 积分1082分
  • 威望2003点
  • 贡献值0点
  • 好评度1693点
  • 原创分2分
  • 专家分0分
5楼#
发布于:2007-03-10 19:21
引用第4楼nangfeng2007-03-10 15:51发表的“”:
http://bbs.driverdevelop.com/htm_data/87/0703/99456.html

代码都公开了,没啥不可以的,

真正重要的代码,只有微软大客户才可以看到~~郁闷阿~
没有战争就没有进步 X3工作组 为您提供最好的军火
Odyssey
驱动小牛
驱动小牛
  • 注册日期2004-12-15
  • 最后登录2008-03-29
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望115点
  • 贡献值0点
  • 好评度115点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2007-03-11 12:10
performance profiling...
wowocock
VIP专家组
VIP专家组
  • 注册日期2002-04-08
  • 最后登录2016-01-09
  • 粉丝16
  • 关注2
  • 积分601分
  • 威望1651点
  • 贡献值1点
  • 好评度1227点
  • 原创分1分
  • 专家分0分
7楼#
发布于:2007-03-11 21:34
看了代码,里面删除了很多,MS也说仅供学习使用.
花开了,然后又会凋零,星星是璀璨的,可那光芒也会消失。在这样 一瞬间,人降生了,笑者,哭着,战斗,伤害,喜悦,悲伤憎恶,爱。一切都只是刹那间的邂逅,而最后都要归入死亡的永眠
znsoft
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2023-10-25
  • 粉丝300
  • 关注6
  • 积分910分
  • 威望14796点
  • 贡献值7点
  • 好评度2410点
  • 原创分5分
  • 专家分100分
  • 社区居民
  • 最爱沙发
  • 社区明星
8楼#
发布于:2007-03-11 22:40
就算能看代码又怎样?除非带着问题去看,否则一样没大的收获

国内不就有win 2k的完整代码吗?有8家以上的单位可以看,也没见有太多人才大牛

不能拷,不能拍,只能看,一个人能记住多少?我感觉顶多是去解疑...
http://www.zndev.com 免费源码交换网 ----------------------------- 软件创造价值,驱动提供力量! 淡泊以明志,宁静以致远。 ---------------------------------- 勤用搜索,多查资料,先搜再问。
ldljlzw
驱动中牛
驱动中牛
  • 注册日期2002-03-16
  • 最后登录2014-01-02
  • 粉丝1
  • 关注0
  • 积分1021分
  • 威望372点
  • 贡献值0点
  • 好评度187点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2007-03-12 00:27
引用第7楼wowocock2007-03-11 21:34发表的“”:
看了代码,里面删除了很多,MS也说仅供学习使用.

虽然还有一部分没有,但这一次给的能编译能启动能调试,这样边学边把那没公开的给它补完整,做成一个项目来搞,目的仅为学习,我想微软也不会说什么吧.
搞项目要有人带头,我就选举wowocock吧!
ldljlzw
驱动中牛
驱动中牛
  • 注册日期2002-03-16
  • 最后登录2014-01-02
  • 粉丝1
  • 关注0
  • 积分1021分
  • 威望372点
  • 贡献值0点
  • 好评度187点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2007-03-12 00:28
我已经搞了一些了:

如:

NTSTATUS
PiProcessTargetDeviceEvent
(
 IN PPNP_DEVICE_EVENT_ENTRY EventEntry
 )
{
  PPLUGPLAY_EVENT_BLOCK EventBlock = &EventEntry->Data;

  PAGED_CODE();

  KdPrint(("PiProcessTargetDeviceEvent: Entered\n"));
  if(
    IopCompareGuid(&EventBlock->EventGuid, &GUID_DEVICE_QUERY_AND_REMOVE)
    ||
    IopCompareGuid(&EventBlock->EventGuid, &GUID_DEVICE_EJECT)
    )
  {
    return PiProcessQueryRemoveAndEject(EventEntry);
  }

  if(IopCompareGuid(&EventBlock->EventGuid, &GUID_DEVICE_ARRIVAL))
  {
    DbgPrint(("PiProcessTargetDeviceEvent: ARRIVAL - notifying user-mode\n"));
    return PiNotifyUserMode(EventEntry);
  }

  if(IopCompareGuid(&EventBlock->EventGuid, &GUID_DEVICE_SAFE_REMOVAL))
  {
    DbgPrint(("PiProcessTargetDeviceEvent: SAFE_REMOVAL - notifying user-mode\n"));
    return PiNotifyUserMode(EventEntry);
  }

  if(IopCompareGuid(&EventBlock->EventGuid, &GUID_DEVICE_NOOP))
  {
    return STATUS_SUCCESS;
  }

  return STATUS_SUCCESS;
}
dollarsun
驱动牛犊
驱动牛犊
  • 注册日期2007-03-08
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分320分
  • 威望33点
  • 贡献值0点
  • 好评度32点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2007-03-19 22:40
楼上的貌似是ddk的啊,看不懂艾
我用的是ds的,现在初步想用高精度定时器或系统中断来控制线程的挂起,在应用程序里用waiforsingalobject()来控制线程什么时候挂起,从而来大概控制某程序的cpu时间。不知各位有没有什么更好的方法
驱网无线,快乐无限
ldljlzw
驱动中牛
驱动中牛
  • 注册日期2002-03-16
  • 最后登录2014-01-02
  • 粉丝1
  • 关注0
  • 积分1021分
  • 威望372点
  • 贡献值0点
  • 好评度187点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2007-03-20 03:15
引用第11楼dollarsun2007-03-19 22:40发表的“”:
楼上的貌似是ddk的啊,看不懂艾
我用的是ds的,现在初步想用高精度定时器或系统中断来控制线程的挂起,在应用程序里用waiforsingalobject()来控制线程什么时候挂起,从而来大概控制某程序的cpu时间。不知各位有没有什么更好的方法


微软不是搞了个共享源代码项目,公开了windows 2003 sp1 的部分代码, 这个项目名叫 WRK. 其实这WRK是可编译并能启动windows 2003的, 但有很大部分是以静态库提供的.现在我意思我们是否能把那些没提供源代码的那部分再反编译成C语言,这样不就可以得到比较完整而又能用的内核代码了吗?
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2007-03-20 07:07
谁有WRK的代码?
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
linestyle
驱动小牛
驱动小牛
  • 注册日期2004-01-28
  • 最后登录2010-01-05
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望139点
  • 贡献值0点
  • 好评度135点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2007-03-20 09:22
我手头有一个从驱网下载的版本,不过刚才给你找链接没有找到
你要是要,留邮箱我给你发邮件。
loading is waiting ...
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
15楼#
发布于:2007-03-20 10:11
引用第14楼linestyle2007-03-20 11:22发表的“”:
我手头有一个从驱网下载的版本,不过刚才给你找链接没有找到
你要是要,留邮箱我给你发邮件。


谢谢!没有注意到是在源码版:http://bbs.driverdevelop.com/htm_data/87/0702/99380.html
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
ldljlzw
驱动中牛
驱动中牛
  • 注册日期2002-03-16
  • 最后登录2014-01-02
  • 粉丝1
  • 关注0
  • 积分1021分
  • 威望372点
  • 贡献值0点
  • 好评度187点
  • 原创分0分
  • 专家分0分
16楼#
发布于:2007-03-20 13:06
大家是否有兴一起来完善这个WRK吗?把微软件没提供源代码的那部分搞出来,我一个人力量太小了!工程太大了!
游客

返回顶部