免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 4476 | 回复: 25
打印 上一主题 下一主题

[时钟管理] 没有时钟中断会发生哪些现象 [复制链接]

论坛徽章:
22
丑牛
日期:2014-08-15 14:32:0015-16赛季CBA联赛之同曦
日期:2017-12-14 15:28:14黑曼巴
日期:2017-08-10 08:14:342017金鸡报晓
日期:2017-02-08 10:39:42黑曼巴
日期:2016-11-15 15:48:38CU十四周年纪念徽章
日期:2016-11-09 13:19:1015-16赛季CBA联赛之同曦
日期:2016-04-08 18:00:03平安夜徽章
日期:2015-12-26 00:06:30程序设计版块每日发帖之星
日期:2015-12-03 06:20:002015七夕节徽章
日期:2015-08-21 11:06:17IT运维版块每日发帖之星
日期:2015-08-09 06:20:002015亚冠之吉达阿赫利
日期:2015-07-03 08:39:42
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-07-10 15:39 |只看该作者 |倒序浏览
本帖最后由 amarant 于 2012-07-10 15:39 编辑

这是一个实际问题,我觉得这也是一个有趣的问题,大家一起来讨论一下吧。如果没有时钟中断会发生那些现象,有没有备选的解决方案。下面说说我能想到的方面,欢迎大家一起讨论、指正
如果没有时钟中断,那么系统的时间就不能被更新。  -- 没有想到解决的方法
任务无法被中断,只有主动出让处理器或者任务执行结束。  -- 解决方法:修改死循环的任务(例如cpu_idle),让其无事可做的时候出让处理器
。。。

论坛徽章:
0
2 [报告]
发表于 2012-07-10 16:09 |只看该作者
  │ Symbol: NO_HZ [=n]                                                                                                                            │  
  │ Prompt: Tickless System (Dynamic Ticks)                                                                                                       │  
  │   Defined at kernel/time/Kconfig:11                                                                                                           │  
  │   Depends on: GENERIC_TIME [=y] && GENERIC_CLOCKEVENTS [=y]                                                                                   │  
  │   Location:                                                                                                                                   │  
  │     -> Kernel Features                                                                                                                        │  
  │   Selects: TICK_ONESHOT [=y]                                                                                                                  │  

论坛徽章:
22
丑牛
日期:2014-08-15 14:32:0015-16赛季CBA联赛之同曦
日期:2017-12-14 15:28:14黑曼巴
日期:2017-08-10 08:14:342017金鸡报晓
日期:2017-02-08 10:39:42黑曼巴
日期:2016-11-15 15:48:38CU十四周年纪念徽章
日期:2016-11-09 13:19:1015-16赛季CBA联赛之同曦
日期:2016-04-08 18:00:03平安夜徽章
日期:2015-12-26 00:06:30程序设计版块每日发帖之星
日期:2015-12-03 06:20:002015七夕节徽章
日期:2015-08-21 11:06:17IT运维版块每日发帖之星
日期:2015-08-09 06:20:002015亚冠之吉达阿赫利
日期:2015-07-03 08:39:42
3 [报告]
发表于 2012-07-10 16:53 |只看该作者
回复 2# 灌水菜鸟


    NO_HZ是表示不一直更新jiffies吧,出于省电,让时钟中断不以周期的方式发生

论坛徽章:
0
4 [报告]
发表于 2012-07-10 17:24 |只看该作者
网络时间同步,另外搞一台机器,通过网络定期向这台机器发送时间信息。

论坛徽章:
2
CU大牛徽章
日期:2013-04-17 11:46:28CU大牛徽章
日期:2013-04-17 11:46:39
5 [报告]
发表于 2012-07-10 17:26 |只看该作者
在目前的分时操作系统 unix/linux 下,没有时钟,貌似就没有进程切换吧,貌似就没法实现多用户、多进程分时处理吧
这个没有时钟中断的东西,貌似没有什么实际意义

论坛徽章:
16
2015亚冠之吉达阿赫利
日期:2015-08-17 11:21:462015年迎新春徽章
日期:2015-03-04 09:58:11酉鸡
日期:2014-12-07 09:06:19水瓶座
日期:2014-11-04 14:23:29天秤座
日期:2014-03-02 08:57:52双鱼座
日期:2014-02-22 13:07:56午马
日期:2014-02-14 11:08:18双鱼座
日期:2014-02-13 11:09:37卯兔
日期:2014-02-06 15:10:34子鼠
日期:2014-01-20 14:48:19戌狗
日期:2013-12-19 09:37:46射手座
日期:2013-12-19 09:33:47
6 [报告]
发表于 2012-07-10 18:51 |只看该作者
本帖最后由 embeddedlwp 于 2012-07-10 18:52 编辑

由于搞过qemu这部分的模拟,如果同时没有HPET, PIT, RTC,那么在linux系统启动过程中会block住。

论坛徽章:
22
丑牛
日期:2014-08-15 14:32:0015-16赛季CBA联赛之同曦
日期:2017-12-14 15:28:14黑曼巴
日期:2017-08-10 08:14:342017金鸡报晓
日期:2017-02-08 10:39:42黑曼巴
日期:2016-11-15 15:48:38CU十四周年纪念徽章
日期:2016-11-09 13:19:1015-16赛季CBA联赛之同曦
日期:2016-04-08 18:00:03平安夜徽章
日期:2015-12-26 00:06:30程序设计版块每日发帖之星
日期:2015-12-03 06:20:002015七夕节徽章
日期:2015-08-21 11:06:17IT运维版块每日发帖之星
日期:2015-08-09 06:20:002015亚冠之吉达阿赫利
日期:2015-07-03 08:39:42
7 [报告]
发表于 2012-07-10 19:15 |只看该作者
回复 4# wenlujon


    好主意,可惜没有网络

论坛徽章:
22
丑牛
日期:2014-08-15 14:32:0015-16赛季CBA联赛之同曦
日期:2017-12-14 15:28:14黑曼巴
日期:2017-08-10 08:14:342017金鸡报晓
日期:2017-02-08 10:39:42黑曼巴
日期:2016-11-15 15:48:38CU十四周年纪念徽章
日期:2016-11-09 13:19:1015-16赛季CBA联赛之同曦
日期:2016-04-08 18:00:03平安夜徽章
日期:2015-12-26 00:06:30程序设计版块每日发帖之星
日期:2015-12-03 06:20:002015七夕节徽章
日期:2015-08-21 11:06:17IT运维版块每日发帖之星
日期:2015-08-09 06:20:002015亚冠之吉达阿赫利
日期:2015-07-03 08:39:42
8 [报告]
发表于 2012-07-10 19:16 |只看该作者
回复 6# embeddedlwp


    需要修改部分内核,我目前内核基本都可以跑起来。

论坛徽章:
22
丑牛
日期:2014-08-15 14:32:0015-16赛季CBA联赛之同曦
日期:2017-12-14 15:28:14黑曼巴
日期:2017-08-10 08:14:342017金鸡报晓
日期:2017-02-08 10:39:42黑曼巴
日期:2016-11-15 15:48:38CU十四周年纪念徽章
日期:2016-11-09 13:19:1015-16赛季CBA联赛之同曦
日期:2016-04-08 18:00:03平安夜徽章
日期:2015-12-26 00:06:30程序设计版块每日发帖之星
日期:2015-12-03 06:20:002015七夕节徽章
日期:2015-08-21 11:06:17IT运维版块每日发帖之星
日期:2015-08-09 06:20:002015亚冠之吉达阿赫利
日期:2015-07-03 08:39:42
9 [报告]
发表于 2012-07-10 19:18 |只看该作者
回复 5# cdtits


    对,其实没有时钟就相当于心脏停止跳动了。我的要求不高,只希望内核跑起来,不会挂住。能进入shell就行了。对抢占/实时之类的没有要求

论坛徽章:
0
10 [报告]
发表于 2012-07-11 11:15 |只看该作者
回复 3# amarant

这个其实跟省电关系不大,主要是概念。已然分出了event和clock,理论上就不再需要一个固定间隔的时钟中断了。而且这样做会提高效率。

想想,为什么必须要时钟中断呢?你担心什么呢?
时间?(clock)现成的RTC什么的多了去了,想什么时候读就什么时候读呗,想设置就成几点就设置呗;
进程切换需要固定的时钟中断么?当然不是,我这个进程想跑10毫秒,另一个只需要5毫秒,简单啊,(event)设置event中断啊! 按照我的需求到时候来个中断不就得了?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP