logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

一文弄懂printf函数从用户态到内核态的执行流程

我们经常使用C库的printf函数,花时间整理一下从用户态到内核态的整个流程,涉及libc、系统调用、tty驱动、console等多个方面。

#linux#arm
TCP-IP详解:SACK选项(wireshark抓包有SLE和SRE的SACK包)

TCP快速重传和超时重传都会面临到一个重传什么包的问题,因为发送端也不清楚丢失包后面传送的数据是否有成功的送到。主要原因还是对于TCP的确认系统,不是特别的好处理这种不连续确认的状况了,只有低于ACK number的片段都被收到才有进行ACK,out-of-order的片段只能是等待,同时,这个时间窗口是无法向右移动的。假设服务器给客户端发送了序号为0-1000的数据包,客户端只收到0-800和8

文章图片
#tcp/ip#wireshark#网络
shell if用法总结

bash shell会按顺序执行if语句,如果command执行后且它的返回状态是0,则会执行符合该条件执行的语句,否则后面的命令不执行,跳到下一条命令。当有多个嵌套时,只有第一个返回0退出状态的命令会导致符合该条件执行的语句部分被执行,如果所有的语句的执行状态都不为0,则执行else中语句。8、空变量和没有初始化的变量可能会对shell脚本测试产生灾难性的影响,因此在不确定变量的内容的时候,在测

文章图片
#linux#服务器#运维
VMware虚拟机挂载windows文件夹方法

在vmware中设置windows共享目录 D:\02_VMShare2. 在ubuntu中安装open-vm-tools,如已安装请忽略。apt-get install open-vm-tools open-vm-tools-desktop在ubuntu中root模式下用vmtools挂载共享目录[root@ubuntu~]# vmware-hgfsclient //查看共享的目录VMShare

#ubuntu#linux
Linux性能调优之perf使用方法

本文档主要记录Linux内核perf工具的使用方法以及遇到的问题。

文章图片
#linux
Linux内存管理 之 KSM功能介绍

共享内存的概念在现代操作系统中很常用了,比如,一个程序启动时会与父进程共用它的全部内存。当其中一个进程发生变化时,就会触发写时复制,把原来的内容写入到新的内存页中,再进行修改。这时其他的未改动的页面仍然是共享的。在执行完exec之后所有的页面不再共享,父子进程各有各的物理页。共享内存是进程间通信的一种手段,多个进程的地址空间共享同一块物理内存,共享内存的进程在进行修改之后同样也会修改物理内存。当l

#linux#服务器#运维
Linux路由规则分析及常用命令

Linux系统在接收/发送数据时,都会经过路由模块。在默认的单路由表情况下,Linux机器要访问一个目标IP时,一般分四步:(1)如果本机有目标ip,则会直接访问本地;(2)如果路由条目里包含了目标ip的网段,则数据包就会从对应路由条目后面的网卡出去;(3)如果没有对应网段的路由条目,则全部都走网关;(4)如果网关也没有,则报错:网络不可达。

#linux#网络#运维
交叉编译链安装及工具集(gcc、readelf、objdump、objcopy和strip等)使用方法

主要解决编译链程序和目标程序运行环境不同的问题,如在x86环境上使用编译工具进行编译汇编链接,而生成的程序需要运行在ARM开发板上。

文章图片
#arm开发#嵌入式硬件#mcu
到底了