摘要: Socket与系统调用深度分析 可以想象的是,当应用程序调用socket()接口,请求操作系统提供服务时,必然会系统调用,内核根据发起系统调用时传递的系统调用号,判断要提供何种服务,具体来讲,若为socket对应的调用号,则执行socket对应的中断服务程序。当服务程序执行结束,便中断返回,从内核态 阅读全文
posted @ 2019-12-15 11:26 zhqian 阅读(1137) 评论(0) 推荐(0) 编辑
摘要: 今天尝试用qemu+gdb的方式调试内核,但是当设置了断点,程序执行到断点时就报错:remote ‘g’ packet reply is too long,错误图片如下 解决办法网上了,说是改一下gdb/remote.c的代码,开始一脸懵逼,都不知道改哪里,知道看到了这篇博客:https://blo 阅读全文
posted @ 2019-12-11 20:49 zhqian 阅读(2543) 评论(0) 推荐(1) 编辑
摘要: 构建调试Linux内核网络代码的环境MenuOS系统 1.搭建linux环境 linux内核环境指的是我们用虚拟机运行linux系统,在linux上运行我们开发的网络代码,这样做的好处就是方便调试,通过虚拟机,我们可以用gdb调试,观察内核运行到哪里了,尤其是针对网络方面的接口(如socket、bi 阅读全文
posted @ 2019-12-11 20:28 zhqian 阅读(862) 评论(0) 推荐(0) 编辑
摘要: c语言实现简单的hello/hi程序 使用tcp协议来实现来实现 实现效果 实现过程 对于服务器端: 1.定义 结构体 2.初始化: sin_family表示协议簇,一般用AF_INET表示TCP/IP协议 sin_port端口为8000 sin_addr将本地所有的ip都绑定到地址 3.通过sok 阅读全文
posted @ 2019-12-09 09:59 zhqian 阅读(1422) 评论(0) 推荐(0) 编辑
摘要: Trceroute为路由跟踪命令 格式:traceroute [选项] IP或域名。 功能:通过traceroute我们可以知道信息从你的计算机到互联网另一端的主机是走的什么路径。当我们不能连接自己的服务器了,可以使用这条命令,在哪个节点上出现了***说明哪个节点出现了问题 选项: -d:使用Soc 阅读全文
posted @ 2019-11-27 21:36 zhqian 阅读(485) 评论(0) 推荐(0) 编辑
摘要: c++中,类只是声名,而在定义这个类的对象时,如果这个类是继承的,或者这个对象里面还有其他的对象,各个构造器的执行顺序是怎么样的。 先放结论: 顺序:1.基类的constructor。2.initialize list(构造器圆括号加冒号)。3.其他对象的constructor。4.自己的const 阅读全文
posted @ 2019-03-06 16:47 zhqian 阅读(290) 评论(0) 推荐(0) 编辑