当前位置: 首页 > news >正文

建设用地规划许可证在哪个网站查询泰兴网站开发

建设用地规划许可证在哪个网站查询,泰兴网站开发,网络营销的方式有哪些?举例说明,网络营销策划方案范本文章目录 📝前言🌠 信号捕捉的流程🌉 sigaction 🌠穿插话题-操作系统是怎么运⾏的🌉 硬件中断🌉时钟中断 🚩总结 📝前言 🌠 信号捕捉的流程 如果信号的处理动作是⽤⼾⾃定…

请添加图片描述

文章目录

  • 📝前言
  • 🌠 信号捕捉的流程
    • 🌉 sigaction
  • 🌠穿插话题-操作系统是怎么运⾏的
    • 🌉 硬件中断
    • 🌉时钟中断
  • 🚩总结


📝前言

在这里插入图片描述

🌠 信号捕捉的流程

在这里插入图片描述

如果信号的处理动作是⽤⼾⾃定义函数,在信号递达时就调⽤这个函数,这称为捕捉信号。
由于信号处理函数的代码是在⽤⼾空间的,处理过程⽐较复杂,举例如下:

  • ⽤⼾程序注册了SIGQUIT 信号的处理函数sighandler
  • 当前正在执⾏main 函数,这时发⽣中断或异常切换到内核态。
  • 在中断处理完毕后要返回⽤⼾态的main 函数之前检查到有信号SIGQUIT 递达。
  • 内核决定返回用户态后不是恢复main函数的上下文继续执行,而是执行sighandler函数, sighandler和main函数使用不同的堆栈空间,它们之间不存在调用和被调用的关系,是两个独立的控制流程。
  • sighandler函数返回后自动执行特殊的系统调用sigreturn再次进入内核态。
  • 如果没有新的信号要递达,这次再返回用户态就是恢复main函数的上下文继续执行了。

在这里插入图片描述

🌉 sigaction

SYNOPSIS#include <signal.h>int sigaction(int signum, const struct sigaction *act,struct sigaction *oldact);
  • sigaction函数可以读取和修改与指定信号相关联的处理动作。调⽤成功则返回0,出错则返回-1。signo是指定信号的编号。若act指针⾮空,则根据act修改该信号的处理动作。若oact指针⾮空,则通过oact传出该信号原来的处理动作。act和oact指sigaction结构体:

  • 将sa_handler赋值为常数SIG_IGN传给sigaction表⽰忽略信号,赋值为常数SIG_DFL表⽰执⾏系统默认动作,赋值为⼀个函数指针表⽰⽤⾃定义函数捕捉信号,或者说向内核注册了⼀个信号处理函数,该函数返回值为void,可以带⼀个int参数,通过参数可以得知当前信号的编号,这样就可以⽤同⼀个函数处理多种信号。显然,这也是⼀个回调函数,不是被main函数调⽤,⽽是被系统所调⽤。

当某个信号的处理函数被调⽤时,内核⾃动将当前信号加⼊进程的信号屏蔽字,当信号处理函数返回时⾃动恢复原来的信号屏蔽字,这样就保证了在处理某个信号时,如果这种信号再次产⽣,那么它会被阻塞到当前处理结束为⽌。如果在调⽤信号处理函数时,除了当前信号被⾃动屏蔽之外,还希望⾃动屏蔽另外⼀些信号,则⽤sa_mask字段说明这些需要额外屏蔽的信号,当信号处理函数返回时⾃动恢复原来的信号屏蔽字。sa_flags字段包含⼀些选项,本章的代码都把sa_flags设为0,sa_sigaction是实时信号的处理函数,本章不详细解释这两个字段,有兴趣的同学可以在了解⼀下。

🌠穿插话题-操作系统是怎么运⾏的

🌉 硬件中断

在这里插入图片描述

  • 中断向量表就是操作系统的⼀部分,启动就加载到内存中了
  • 通过外部硬件中断,操作系统就不需要对外设进⾏任何周期性的检测或者轮询
  • 由外部设备触发的,中断系统运⾏流程,叫做硬件中断
// Linux
内核
0.11 源码voidtrap_init(void)
{int i;set_trap_gate(0, &divide_error); // 设置除操作出错的中断向量值。以下雷同。set_trap_gate(1, &debug);set_trap_gate(2, &nmi);set_system_gate(3, &int3); /* int3-5 can be called from all */set_system_gate(4, &overflow);set_system_gate(5, &bounds);set_trap_gate(6, &invalid_op);set_trap_gate(7, &device_not_available);set_trap_gate(8, &double_fault);set_trap_gate(9, &coprocessor_segment_overrun);set_trap_gate(10, &invalid_TSS);set_trap_gate(11, &segment_not_present);set_trap_gate(12, &stack_segment);set_trap_gate(13, &general_protection);set_trap_gate(14, &page_fault);set_trap_gate(15, &reserved);set_trap_gate(16, &coprocessor_error);// 下面将int17-48的陷阱门先均设置为reserved,以后每个硬件初始化时会重新设置自己的陷阱门ofor (i = 17; i < 48; i++)set_trap_gate(i, &reserved);set_trap_gate(45, &irq13); // 设置协处理器的陷阱⻔。outb_p(inb_p(0x21) & 0xfb, 0x21);       // 允许主8259A 芯⽚的IRQ2 中断请求。outb(inb_p(0xA1) & 0xdf, 0xA1);         // 允许从8259A 芯⽚的IRQ13 中断请求。set_trap_gate(39, &parallel_interrupt); // 设置并⾏⼝的陷阱⻔。
}void rs_init(void)
{set_intr_gate(0x24,rs1_interrupt); // 设置串行口1的中断门向量(硬件IRQ4信号)。set_intr_gate(0x23,rs2_interrupt); // 设置串行口2的中断门向量(硬件IRQ3信号)。init(tty_table[1].read_q.data);// 初始化串行口1( .data是端口号)。init(tty_table[2].read_q.data);// 初始化串行口2。outb(inb_p(0x21) & 0xE70x21); // 允许主8259A 芯片的IRQ3,IRQ4中断信号请求。
}

🌉时钟中断

问题:
进程可以在操作系统的指挥下,被调度,被执⾏,那么操作系统⾃⼰被谁指挥,被谁推动执⾏呢?

外部设备可以触发硬件中断,但是这个是需要⽤⼾或者设备⾃⼰触发,有没有⾃⼰可以定期触发的
设备?
在这里插入图片描述

这样,操作系统不就在硬件的推动下,⾃动调度了么!!!

// 调度程序的初始化子程序。
void sched_init(void)
{... set_intr_gate(0x20, & timer_interrupt);// 修改中断控制器屏蔽码,允许时钟中断。outb(inb_p(0x21) & ~0x01,0x21);// 设置系统调用中断门。set_system_gate(0×80, & system_call);...
}
// system_call.s
_timer_interrupt : ...;
// do_timer(CPL)执行任务切换、计时等工作,在kernel/shched.c,305行实现。
call _do_timer; // 'do_timer(long CPL )' does everything from// 调度入口
void do_timer(long cpl)
{...;schedule();
}
void schedule(void)
{switch_to(next); // 切换到任务号为next的任务,并运行之。
}

🚩总结

请添加图片描述

http://www.yayakq.cn/news/131881/

相关文章:

  • 济南市高新技术官方网站开发区安康网站开发
  • 合肥专业做网站的公司哪家好沈阳网站建设方案模板
  • 17网站一起做网店档口出租那个网站有免费的模板
  • 百度做网站优化多少钱一年室内设计培训班要多少钱
  • 做暖暖免费视频网站近几年的网络营销案例
  • 网站域名续费后SEO查询未更换Thinkphp网站开发实例
  • 怎么建国外网站杭州网站免费制作
  • 好的网站首页建设公司中建装饰集团
  • wordpress英文站更新通知目录怎样建设个自己的网站首页
  • 易语言编程软件做网站江西建设职业技术学院迎新网站
  • 网站建站怎么分前端和后端网页制作与网站建设宝典 pdf
  • 怎么做网站出肉狗时尚wordpress免费主题下载
  • 做同城网站有哪些什么是市场营销什么是网络营销
  • 网站打开速度加快怎么做网上购物平台排名前十名
  • 北京建设银行对公网站京东网页设计教程
  • 营销型网站建设优化合肥市住房和建设局网站
  • 营销型企业网站测评表wordpress登录后搜索
  • 网站的ftp帐号软件开发流程图用啥画
  • 单页营销式网站模板下载长治推广型网站建设
  • 鄂州免费设计网站建设网站上的html内容怎么修改
  • 平面设计培训网站广州冼村旧改最新消息
  • 东莞做外贸网站房产公司网站建设
  • 江苏盐城有做淘宝网站的吗哈尔滨网站建设云聚达
  • 培训网站建设方案模板苏州新闻今天最新消息新闻事件
  • 嘉兴网站搜索排名产品界面设计
  • 竹溪县网站集约化建设网站怎么做有创意
  • 漯河 做网站wordpress 做 cms
  • 做二维码签到的网站厦门在线制作网站
  • 做家务的男人免费观看网站微信开发小程序需要多少钱
  • 网站内容要求网站建设和优化的好处