3 zeus_abc

尚未进行身份认证

暂无相关简介

等级
TA的排名 17w+

go遇到的问题

一、类型转换      a=100.0 //c/c++使用100.0f        fmt.Printf("%f\n",a/4)//可以得到浮点数      fmt.Printf("%f\n",a/4.0)//也可以得到浮点数  二、mysql出现的字符集       针对目前出现的utf8mb4,mysq

2017-09-04 09:43:13

toml使用中容易遇到的问题

1、成员变量、类型、toml中的名字的一致性    go语言中的结构定义       serverstruct{                 Debug          bool  `toml:debug`        Log            log

2017-09-02 15:48:51

go的protobuf环境搭建

go的protobuf环境搭建

2017-08-30 08:21:08

go开发中遇到的问题

go入门

2017-08-22 07:58:14

redis日常学习

redis

2017-08-18 19:57:18

go开发中容易犯的错

go入门

2017-08-18 16:25:17

go语言入门必备

go语言入门

2017-08-13 19:14:50

go的html模板替换

go入门

2017-08-09 21:57:54

go的反射机制和interface

go反射机制的摸索

2017-08-09 21:31:23

go语言开发必备

go入门必备

2017-08-09 21:13:41

文件系统中的io请求的传递

块设备的io请求类型在不同层次有不同的表示   pagecache=>bufferhead=>bio=>requestIO请求在内核的传递过程中,并未发生实际的拷贝,而是引用部分数据在request对象中还是有bio对象的,在转化的时候,bio对象并未消失这是一种系统设计的方法,对象的有效性通过引用计数来实现在整个io请求处理过程中page,buffer

2016-08-15 17:18:48

文件系统中数据读取的详细过程

一直在困惑文件系统sys_read、bio、io调度、硬中断、软中断、io完成通知之间的过程是怎么样的,通过代码的跟踪大致明白过程了内核态的系统调用与bio的交界处的函数mpage_bio_submit(fs/mpage.c)bio与io调度的交界处的函数__make_request(block/blk-core.c)io调度与驱动层的交界函数__generic_unplug_devi

2016-08-14 22:32:41

缓存的理解

CPU体系结构中有L1,L2,L3缓存L1是CPU相关的,L2,L3则是所有CPU共享的L1分指令和数据的Cache,Cacheline是缓存的最小单位想象CPU在执行指令的时候,引用的大部分的数据都是L1,L2,L3中,只有部分是使用内存中的数据可以想象这里存在一个L1,L2,L3与内存数据同步的问题,类似内存与磁盘的同步这个时候Cache与内存就存在映射关系了,书

2016-08-14 00:04:36

文件系统中的疑惑

1、inode之间有逻辑关系,在持久化的时候保存这种关系吗?   逻辑关系就是一个文件使用的块的链表编号   逻辑关系还包括就是目录的树结构,需要在内存中构建出来2、dentry需要持久化吗?   树形结构不需要持久化   通过file_system_type,file_system和rootdentry以及inode构建出来   目

2016-08-12 15:00:21

Qdisc数据发送

Qdisc中的实现方式大致如下structQdisc{ int (*enqueue)(structsk_buff*skb,structQdisc*dev); structsk_buff* (*dequeue)(structQdisc*dev); unsigned flags; int padded; structQdisc_ops *ops; s

2016-08-11 10:07:34

数据收发的软中断以及数据从网卡发送

注册软中断staticint__initnet_dev_init(void) {......open_softirq(NET_TX_SOFTIRQ,net_tx_action); open_softirq(NET_RX_SOFTIRQ,net_rx_action);......}staticvoidnet_tx_acti

2016-08-11 01:00:26

协议栈数据发送

数据发送tcp_write_xmit(){ while((skb=tcp_send_head(sk)))  {   tcp_event_new_data_sent(sk,skb);//重新获取首部 }}数据发送经过ip层路由和邻居协议后发送队列关联了Qdiscnet/core/Dev.cintdev_queue_xmit(structs

2016-08-11 00:36:39

网络包处理的中断下半部

中断下半部处理  中断下半部将网卡中的DMA-ring中的skb取出来,经过ip层处理,主要是netfilter  最后决定是否传递到本地传输层  如果交给本地传输层ip的最后处理ip_local_deliver_finish中断的下半部的结束位置是哪里?何时出中断上下文?  中断下半部的结束是把这个从DMA-ring中的skb找到归宿(传输层的队列或者转发出去)

2016-08-10 15:21:12

tcp拥塞控制

查看当前正在使用的拥塞算法  sysctlnet.ipv4.tcp_available_congestion_control  /proc/sys/net/ipv4/tcp_congestion_control 常见的拥塞算法 cubic(RTT隔离,但有流量突发) reno hybla vegas illinois hstcp(RTT不公平性

2016-08-10 15:17:07

客户端状态机如何进入ESTABLISHED

结论   tcp客户端connect发起之后,协议栈就会发送SYN给服务器,协议栈收到来自服务器的响应后,发出Ack后,就进入了established  tcp服务器在收到SYN后,发送SYN+ACK后就进入SYN_RECVD,再次收到客户端的Ack时,也进入established  established状态连接的双方进入的时机是有先后的,客户端是先进入的,服务器是后进入的

2016-08-09 23:55:03

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!