- 博客(24)
- 资源 (2)
- 收藏
- 关注
原创 Ubuntu 安装 SystemTap
Systemtap 简介借用官方的话就是:收集 linux 以及运行在linux 系统上程序的运行的信息调查程序的性能怎么安装呢对于 ubuntu 系统来说直接sudo apt-get install systemtap那么 centos 就是yum install systemtap上面安装的 systemtap 有一定程度不可用,例如在运行的时候出现 这个问题,部分截图如下所示:出现上面问题的原因是 linux 内核版本太新,而 systemtap 版本太旧导致的,这个时候
2022-04-02 14:41:56
2264
原创 操作系统概念--2 操作系统结构
操作系统结构1系统调用操作系统提供了系统调用接口,作为应用程序与系统中相应的系统调用。通常每一个系统用一个与其相关的数字,系统调用接口根据这些数字维护一个列表索引。然后,系统调用接口来调用所需的操作系统内核中的系统调用。向操作系统传递参数有三种方法:1、通过寄存器(参数少于等于寄存器数量);2、参数保存在内存块中,然后将该内存块的地址通过寄存器传递;3、参数通过程序放在或压入堆栈中,...
2019-07-17 20:42:32
216
原创 操作系统概念--- 1.导论
操作系统-导论1. 双重模式操作操作系统为了确保当用户程序出现错误的时候仅仅影响自己,而不会对操作系统产生影响,就必须要区分操作系统代码与用户定义代码的执行。操作系统至少需要两种独立的操作模式:用户模式和监督程序模式(管理模式/系统模式/特权模式),实现方式:在计算机硬件中增加一个模式位来表示当前模式。双重模式实现方式:将引起损害机器指令作为特权指令,用户模式试图执行特权指令,会被硬件认为...
2019-07-15 21:27:55
245
原创 TCP自连接
自连接1. 如何实验出现这个现象创建python 脚本 self_connect.py#!/usr/bin/pythonimport errnoimport socketimport sysimport timeif len(sys.argv) < 2: print "must input port." print "port should in net.i...
2019-03-06 20:45:36
219
原创 Linux-网络编程:阻塞IO下的TTCP实验
阻塞方式发送和接收数据代码在: recipes/tpc/{echo.cc, echo_client.cc}这里的问题其实是出在服务端,服务端只准备了4K的缓冲区,没有完整的读到客户端发来的请求。因此在设计协议的时候,客户端需要先发来这个请求有多大比如header:20M,告诉服务端这个请求有20M,然后在把payload(20M)这20M的内容发过来。服务端在接收到客户端的heade...
2018-12-20 20:31:16
310
原创 linux网络编程——ttcp
ttcp:测试网络吞吐量的性能测试工具关心的性能指标:1. 带宽,MB/SNetcat测试时是一个上限,因此Netcat发的是什么而外的开销都没有,是纯的payload;其他的工具,因为消息要分包等等,会有一些overhead,测出来会小于Netcat测出来的带宽,如果测试出来比Netcat的要大,有一种情况是数据压缩了。出现这些情况需要与基本的117数据来做对比:如果测出来的数据小太多...
2018-12-20 19:45:55
1746
转载 gcc编译参数-fPIC的一些问题
-fPIC 作用于编译阶段,告诉编译器产生与位置无关代码(Position-Independent Code),则产生的代码中,没有绝对地址,全部使用相对地址,故而代码可以被加载器加载到内存的任意位置,都可以正确的执行。这正是共享库所要求的,共享库被加载时,在内存的位置不是固定的。gcc -shared -fPIC -o 1.so 1.c1这里有一个-fPIC参数 PIC就是posi...
2018-12-18 09:53:13
189
原创 Linux调试线程的堆栈
1、通过 ps -ef | grep AppName 找到AppName进程对应的PID想通过名字就打印出AppName进程的pid使用下面的命令echo $(pgrep -d',' -f AppName)2、TOP命令,找到占用CPU最高的进程top命令详解$ top top - 20:11:45 up 850 days, 1:18, 3 users, load aver...
2018-12-12 10:39:09
1302
转载 系统级性能分析工具 — Perf
从2.6.31内核开始,linux内核自带了一个性能分析工具perf,能够进行函数级与指令级的热点查找。 perf Performance analysis tools for Linux.Performance counters for Linux are a new kernel-based subsystem that provide a framework for al...
2018-12-12 10:16:09
239
转载 Linux下的内核测试工具——perf使用简介
摘要:Perf是Linux kernel自带的系统性能优化工具。Perf的优势在于与Linux Kernel的紧密结合,它可以最先应用到加入Kernel的new feature。pef可以用于查看热点函数,查看cashe miss的比率,从而帮助开发者来优化程序性能。 1.perf的安装 由于我们经常是在自己编译的内核上进行开发工作,这里需要有包含调式信息的内核启动镜像文件vmlinu...
2018-12-12 10:12:52
990
原创 Linux网络编程
Linux 网络编程学习(网络概要)关注点:1.TCP的服务端和客户端,不涉及用户界面;粗略涉及udp,以及udp和tcp的巨大区别,特别再处理并发时候是完全不同的;强调可以测量的性能。2.避免猜想的优化网络方面的以太网分层1. 以太网层(帧)2. IP层(分组)3. TCP层(分节)3. 应用层(消息)网络编程几个注意的地方1. 不要把网络IO和业务逻辑混合在一起2. TCP不可靠,收到的数据不...
2018-12-08 16:25:55
122
原创 linux网络编程——课程简介
Linux 网络编程学习(2)课程大纲1.TTCP:一个经典的TCP性能测试工具2.Round-trip:测试两台机器之间的时间差(udp)3.Netcat:测试网络的瑞士军刀4.Slow sink/surce :模拟慢速的网的收发,从应用层模拟,可以找出服务端特备是在非阻塞情况下,能不能z正确应对网络慢的情况5.SOCKS 代理服务: 中继一下两个TCP连接,非阻塞情况下,两边带宽不匹配就比较麻...
2018-12-08 11:25:53
642
prml 中文版 马春鹏
2017-12-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人