linux arm时钟中断,RTC通过IRQ0产生的时钟中断的作用?

在ARM硬件平台下,RTC通过IRQ0产生的时钟中断在系统中的作用是什么?

通常ARM Linux下的HZ,jiffies,时钟节拍的概念是针对RTC的时钟中断还是PIT的产生的时钟中断?

|

哎呀,我误导你了

arm上的IRQ0不是RTC输入的

rtc仅仅作为arm soc的片内器件

此外arm如s3c2410还有5组PIT,一般是拿这些PIT当做jiffies时钟中断

且在arm下再把这个jiffies相关的时钟中断叫做IRQ0就不合适了,编号可能不再是0了

cat /proc/interrupts 可见

以下代码使用的是IRQ_TIMER4中断作为ticks中断,即jiffies时钟中断

正规术语我讲不清楚,就是这个意思了

定时器timer4被编程控制,作为ticks中断,而不是RTC

static irqreturn_ts3c2410_timer_interrupt(int irq, void *dev_id)

{

timer_tick();

return IRQ_HANDLED;

}

static structirqactions3c2410_timer_irq = {

.name= "S3C2410 Timer Tick",

.flags= IRQF_DISABLED | IRQF_TIMER | IRQF_IRQPOLL,

.handler= s3c2410_timer_interrupt,

};

static void __init s3c2410_timer_init(void)

{

s3c2410_timer_resources();

s3c2410_timer_setup();

setup_irq(IRQ_TIMER4, &s3c2410_timer_irq);

}

structsys_timers3c24xx_timer= {

.init= s3c2410_timer_init,

.offset= s3c2410_gettimeoffset,

.resume= s3c2410_timer_setup

};

|

关于你的问题最直接的回答,可参照

http://www.xijiaopen.com.cn/article/4895.htm

|

换句话说,内核需要时钟来定时对进程进行调度,比如时间片轮转。这是最直接与时间相关的。当然还有其它与时间有关的。比如块设备有一个进程kblockd,定时将i/O从队列请求里,要求驱动进行处理……………………

|

mark

太短了 接着mark

|

没有时钟,CPU就不能分时,进程就不能调度,系统就会失去知觉。

|

再具体一点,去看《操作系统设计与实现》minix作者写的书。

你可能感兴趣的:(linux,arm时钟中断)