自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Windeal

Linux、网络协议栈、网络通信

  • 博客(8)
  • 资源 (25)
  • 收藏
  • 关注

原创 中断详解(七)——软中断与微任务

我们知道,中断处理程序被分为上半部函数和下半部函数。而软中断、微任务、工作队列都是是下半部函数的机制。(至于工作队列的方式,她是以另一个线程的方式实现的,初始化时创建,调用时唤醒,其实request_thread_irq是将中断线程化,包括利用定时器实现延时处理,这都不是在中断上下文中)    软中断和微任务都是通过do_softirq执行的。    中断处理在do_IRQ中调用软中断

2015-03-25 15:28:05 3443

原创 中断详解(六)——do_IRQ函数

中断处理程序在完成一些堆栈和寄存器的处理后,调用do_IRQ函数。do_IRQ是中断在C语言的总入口。common_interrupt: addl $-0x80,(%esp) /* Adjust vector into the [-256,-1] range */ SAVE_ALL TRACE_IRQS_OFF movl %esp,%eax call

2015-03-25 11:16:15 10776

原创 中断详解(五)——中断处理程序

对于异常处理来说,内核只要给引起异常的进程发送一个Unix信号就能处理大多数异常。然后内核的工作就是延迟下一个动作,知道进程接收到该信号。关于异常处理,内核并没有执行多少任务,因而异常处理非常迅速。这种方怯并不适合中断,因为经常会出现一个进程(例如,一个请求数据传输的进程)被挂起好久后中断才到达的情况,因此,一个完全无关的进程可能正在运行。所以,给当前进程发送一个Unix信号是毫无意义的.

2015-03-24 17:03:38 5328

原创 中断详解(四) ——异常与异常处理

异常8Ox86微处理器发布了大约20种不同的异常,内核必须为每一种异常提供一个异常处理程序。对于某些异常,CPU控制单元在开始执行异常处理程序前会产生一个硬件出错码(hardwar eerror code) , 并且压入内核态堆钱。(见本文最后面的几张大图)异常处理CPU的大部分异常都被Linux解释为出错条件。当其中一个异常发生肘,内核就向引起异常的进程发送一个信号向色通

2015-03-24 16:31:07 5311

原创 中断详解(三)——中断和异常的硬件处理

假定内核已被初始化,CPU在保护模式下运行    当执行了一条指令后,CS和eip这对寄存器包含下一条将要执行的指令的逻辑地址.在处理那条指令之前,控制单元会检查在运行前一条指令时是否已经发生了一个中断或异常。如果发生了一个中断或异常,那么控制单元执行下列操作:    1)确定与中断或异常关联的向量i (0 ≤ i ≤ 255)    2)读由idtr寄存器指向的I

2015-03-24 14:44:44 3565 1

原创 中断详解(二)——中断描述符、任务门、中断门、陷阱门

什么是中断描述符表    中断描述符IDT表示一个系统表,它与中断或异常向量相联系。每一个中断或异常向量在这个系统表中有对应的中断或异常处理程序入口地址。中断描述符的每一项对应一个中断或异常向量,每个向量由8个字节组成。因此,最多需要256*8=2048字节来存放IDT。    在运行中断之前,必须初始化IDT(中断描述符表)。任务门、中断门、陷阱门    IDT包

2015-03-24 13:53:26 16954

原创 中断详解(一)——基本概念

概述什么是中断    中断通常被定义为一个事件,该事件能够改变处理器执行指令的顺序。这样的事件与 CPU 芯片内外部硬件电路产生的电信号相对应。    中断分为同步中断和异步中断。    同步中断——同步中断是当指令执行时由 控制单元产生的,之所以称为同步,是因为只有在一条指令终止执行后 CPU 才会发出中断    异步中断——异步中 断是由其他硬件设备依照

2015-03-24 10:30:32 26805 6

原创 深入理解Linux网络技术内幕——中断与网络驱动程序

接收到帧时通知驱动程序    在网络环境中,设备(网卡)接收到一个数据帧时,需要通知驱动程序进行处理。有一下几种通知机制:轮询:    内核不断检查设备是否有话要说。(比较耗资源,但在一些情况下却是最佳方法)中断:    特定事件发生时,设备驱动程序代表内核指示设备产生硬件中断,内核中断其它活动满足设备的需要。多数网络驱动程序使用中断。中断期

2015-03-19 14:12:23 6202

OpenStack企业云平台架构与实践.pdf

本书结合作者亲身经历的各类OpenStack的咨询、规划和实施经验,以循序渐进的方式,从理论和工程角度,讲述了如何将OpenStack(本质上只是一堆相关的进程和服务)变成企业可靠的、托管企业各类生产环境的云平台的方方面面,让OpenStack真正变成我们身边默默无闻但又实实在在的环境的一分子。本书分为10章,分别介绍了OpenStack与云,OpenStack社区,OpenStack与AWS、VMware、虚拟化管理工具,虚拟机管理程序与典型应用,OpenStack架构与组件,OpenStack部分组件安装示例,系统定制技术,OpenStack部署,第三方工具搭建OpenStack运行环境,九州云Animbus融合架构一体机解决方案等内容。

2018-04-25

TCP-IP详解卷2-实现.pdf

CP/IP详解·卷2:实现》完整而详细地介绍了TCP/IP协议是如何实现的。书中给出了约500个图例,15000行实际操作的C代码,采用举例教学的方法帮助你掌握TCP/IP实现。《TCP/IP详解·卷2:实现》不仅说明了插口API和协议族的关系以及主机实现 与路由器实现的差别。还介绍了4.4BSD-Lite版的新的特点。《TCP/IP详解·卷2:实现》适用于希望理解TCP/IP协议如何实现的人,包括编写网络应用程序的程序员以及利用TCP/IP维护计算机网络的系统管理员。

2018-04-13

UNIX环境高级编程 中文第3版

《UNIX环境高级编程(第3版)》是被誉为UNIX编程“圣经”的Advanced Programming in the UNIX Environment一书的第3版。在本书第2版出版后的8年中,UNIX行业发生了巨大的变化,特别是影响UNIX编程接口的有关标准变化很大。本书在保持前一版风格的基础上,根据新的标准对内容进行了修订和增补,反映了新的技术发展。书中除了介绍UNIX文件和目录、标准I/O库、系统数据文件和信息、进程环境、进程控制、进程关系、信号、线程、线程控制、守护进程、各种I/O、进程间通信、网络IPC、伪终端等方面的内容,还在此基础上介绍了众多应用实例,包括如何创建数据库函数库以及如何与网络打印机通信等。此外,还在附录中给出了函数原型和部分习题的答案。   《UNIX环境高级编程(第3版)》概念清晰,阐述精辟,对于所有层次UNIX/Linux程序员都是一本不可或缺的参考书。

2018-01-15

libev-官方手册

libev是高性能事件循环/事件模型的网络库,并且包含大量新特性。 它是继lievent和Event perl module之后的一套全新网络库。它追求的目标:速度更快,bug更少,特性更多,体积更小。

2017-06-12

彻底搞定C指针 高清版

姚云飞先生的大作《彻底搞定C指针》是互联网上中文C/C++界内为数不 多的专门阐述C指针问题的优秀文献资源之一。

2014-12-26

cntlm(设置全局域代理)

解决ISA+Windows域 环境下,一些无法设置域代理的软件无法连接网络的问题

2014-09-25

H.264编码源代码(单帧,简单易用)

H.264编码源代码,就几个文件,容易看懂,可以通过调用几个函数实现一个视频帧的编解码。

2014-03-31

算法分析与设计+王晓东

本书以算法设计策略为知识单元 系统地介绍计算机算法的设计方法与分析技巧 以期为计算机科学与技术学科的学生提供广泛而坚实的计算机算法基础

2014-03-11

学生成绩管理系统

学生成绩管理系统 VC6 可运行

2011-12-29

Tab控件的使用

Tab控件的使用

2011-12-29

CMMI3 开发规范文档

CMMI3 开发规范文档

2011-12-29

MFC类库详解MSDN

中文版的MFC类库详细解析。具有索引功能。能够较快地查询MFC基础类库。方便编程开发。

2011-08-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除