志高空调白/1B/B和Y4/Y04/B有什么区别

话说经过了漫长的一个多月,尛明已经成长了许多所以他改了一个名字叫“大明”。

这时他已经不是那个只会做100以内加法的那个“小明”了现在他甚至会任意长度嘚正小数的加法。

现在给你两个正的小数A和B,你的任务是代表大明计算出A+B的值


本题目包含多组测试数据,请处理到文件结束
每一组測试数据在一行里面包含两个长度不大于400的正小数A和B。

请在一行里面输出输出A+B的值请输出最简形式。详细要求请见Sample Output


大数实数(包括整數)的相加,整体的想法大家都应该是一致的:先去掉小数点变成整数再相加1. 先找两个数的小数点,确定最大的小数位数后面补0成相哃的位数,如1.和12.3相加的话则12.3后面补0变成

12.,。2.去掉小数点变成整数,在首段补0变成相同的位数如1.和12.3相加的话,前面12.3变成了12.,整数变为1.变為,将首段补0变为3.相加(我在代码中将字符串逆置,低位在前便于进位和pushuback

以后的系列博文将深入分析Linux内核嘚网络栈实现原理这里看到曹桂平博士的分析后,也决定选择Linux内核1.2.13版本进行分析

1.功能和网络栈层次已经非常清晰

2.该版本与其后续蝂本的衔接性较好

3.复杂度相对新的内核版本较小,复杂度低更容易把握网络内核的实质

4.该内核版本比较系统资料可以查询

下面开始零基础分析Linux内核网络部分的初始化过程。

网络栈的层次结构如下图:(注:该图片摘自《Linux内核网络栈源代码情景分析》)


物理层主要提供各种连接的物理设备如各种网卡,串口卡等;

链路层主要指的是提供对物理层进行访问的各种接口卡的驱动程序如网卡驱动等;

网路層的作用是负责将网络数据包传输到正确的位置,最重要的网络层协议当然就是IP协议了其实网络层还有其他的协议如ICMP,ARPRARP等,只不过不潒IP那样被多数人所熟悉;

传输层的作用主要是提供端到端说白一点就是提供应用程序之间的通信,传输层最着名的协议非TCP与UDP协议末属了;

应用层顾名思义,当然就是由应用程序提供的用来对传输数据进行语义解释的“人机界面”层了,比如HTTPSMTP,FTP等等其实应用层还不昰人们最终所看到的那一层,最上面的一层应该是“解释层”负责将数据以各种不同的表项形式最终呈献到人们眼前。

Linux网络协议栈结构

1系统调用接口层,实质是一个面向用户空间应用程序的接口调用库向用户空间应用程序提供使用网络服务的接口。

2协议无关的接口層,就是SOCKET层这一层的目的是屏蔽底层的不同协议(更准确的来说主要是TCP与UDP,当然还包括RAW IP SCTP等),以便与系统调用层之间的接口可以简单统一。简单的说不管我们应用层使用么协议,都要通过系统调用接口来建立一个SOCKET这个SOCKET其实是一个巨大的sock结构,它和下面一层的网络協议层联系起来屏蔽了不同的网络协议的不同,只吧数据部分呈献给应用层(通过系统调用接口来呈献)

3,网络协议实现层毫无疑問,这是整个协议栈的核心这一层主要实现各种网络协议,最主要的当然是IPICMP,ARPRARP,TCPUDP等。这一层包含了很多设计的技巧与算法相当嘚不错。

4与具体设备无关的驱动接口层,这一层的目的主要是为了统一不同的接口卡的驱动程序与网络协议层的接口它将各种不同的驅动程序的功能统一抽象为几个特殊的动作,如openclose,init等这一层可以屏蔽底层不同的驱动程序。

5驱动程序层,这一层的目的就很简单了就是建立与硬件的接口层。

start_kernel函数经过平台初始化内存初始化,陷阱初始化中断初始化,进程调度初始化缓冲区初始化等,然后执荇socket_init()最后开中断执行init()。


这里文件中定义的NPROTO为16

而pop[i]是如何定义的呢

proto_ops结构体是么呢?该结构体的定义在include/linux/net.h中该结构体是具体的操作函数集合,昰联系BSD套接字和INET套接字的接口可以把BSD套接字看做是INET套接字的抽象,结构示意图如下:

具体定义在net.h中

可以看到这里实际上就是一系列操莋的函数,有点类似于文件系统中的file_operations通过参数传递socket完成操作。

以后注重讨论标准的INET域

return(i);//返回用于刚刚注册的协议向量号 sti();//出现异常也要开Φ断

其中AF_INET宏定义为2,即INET协议族号为2后面是函数指针,INET域的操作函数

协议初始化完成后再执行dev_init()设备的初始化。

这是大体的一个初始化流程讨论的不是很详细,后续会进行Linux内核网络栈源代码的详细分析

我要回帖

更多关于 Y2B 的文章

 

随机推荐