Articles of 统计

从linux内核使用lstat / stat?

我希望有人可以事实检查我的假设,“在CentOS 7中,能否从Linux内核3.10.0调用lstat和/或stat。我一直在寻找和阅读,尽可能多的find,能够混淆我自己我不知道我发现的例子是否可用于内核空间或用户空间。 基本的问题是,我可以从内核调用lstat或stat吗? 具体而言,我将这添加到fs目录下的exec.c。 目标是区分既是符号链接又是硬链接的文件,只是一种学习体验。 如果这是真的,我会打电话给lstat /统计或“64”版本 – 我在X86架构,如果重要的话。 根据下面的评论添加11-18-2015 // These two lines are in the original exec.c file struct file *file; file = do_filp_open(AT_FDCWD, &tmp, &open_exec_flags, LOOKUP_FOLLOW); // In the open_exec function I added the following struct stat buf; int lstat(struct file, struct stat buf); mm_segment_t security_old_fs; security_old_fs = get_fs(); set_fs(KERNEL_DS); if (lstat(*file, […]

如何确定Linux中某些用户下运行的进程产生多lessCPU负载?

我想制作一个简单的监控脚本,用于logging用户“abc”在文本文件中产生的CPU负载。 vmstat,iostat,mpstat和free似乎没有能力根据用户名进行过滤。 有没有可能? 编辑 :顺便说一句。 我在Red Hat EL 6.0上运行。

计算Linux中几个“时间”命令的平均值

我正在使用“time”命令在Linux上分析一个程序。 问题是它的输出不是很有统计意义,因为它只运行一次程序。 有一种工具或方法可以平均获得几次“时间”运行吗? 可能aswe连同统计信息,如偏差?

bash函数$ RANDOM是否应该有一个统一的分布?

我知道bash函数$ RANDOM会产生一个范围内的随机整数,但是,这些数字应该遵循(或近似)一个统一的离散分布吗?

什么是Linux相当于GetProcessIoCounters?

这是一个链接到Windows 文档 。 基本上我想获得类似的数据,但在Linux上。 如果不是全部是可能的,那么至less有一些部分。

使用C ++和stat获取所有者的访问权限

我如何使用C ++在Kubuntu Linux中使用sys / stat.h中的stat来获取文件所有者的访问权限? 目前,我得到这样的文件的types: struct stat results; stat(filename, &results); cout << "File type: "; if (S_ISDIR(results.st_mode)) cout << "Directory"; else if (S_ISREG(results.st_mode)) cout << "File"; else if (S_ISLNK(results.st_mode)) cout << "Symbolic link"; else cout << "File type not recognised"; cout << endl; 我知道我应该使用t_mode的文件模式位,但我不知道如何。 请参阅sys / stat.h

如何在进程完成执行后看到/ proc / / status的内容?

我想看一个小C程序的统计,但是是一个开始和结束的小程序。 (不是一些长时间运行的程序)。 我想从访问内存,caching命中,上下文切换等方面来改进这个程序。 /proc/[pid]/status中的参数很好,但是我找不到在执行后看到它们的方法。 如何在完成执行完成后看到这个文件?

如何监视内核执行的系统调用的数量?

我需要监视Linux执行的系统调用的数量。 我知道vmstat能够显示这个BSD和AIX系统,但对于Linux它不能(根据手册页)。 /proc有没有计数器? 或者还有其他方法来监视它吗?

如何绘制不同的标记('x'和'o')基于R中的条件

我有一个这样的数据: for_y_axis <-c(0.49534,0.80796,0.93970,0.99998) for_x_axis <-c(1,2,3,4) count <-c(0,33,0,4) 我想要做的是使用for_x_axis和for_y_axis来绘制graphics,但是如果count数值等于0(零),那么将标记为“o”,如果count数值大于零,则标记为“x”。 有一个简单的方法来实现在R?

业务统计收集系统的build议

我有一个运行在Linux上的Web服务,它由一些依靠C ++程序来完成繁重任务的PHP代码组成。 PHP和C ++代码每个事务运行一次,然后终止。 它不是(还)坚持不懈(即守护进程),是的,我知道它会更有效率。 随着交易完成,各种信息积累(我统称为“统计”或“统计”)。 这些信息包括分析信息,如交易各种子任务的执行时间,以及逻辑信息,如交易的性质和结果。 这些指标是高度专用的,所以一般的监测和测量工具在这里可能是不合适的。 我想开始logging这些信息,但是我不想logging它来干扰性能。 具体来说,我假设我不想承担数据库连接的代价和每个事务的拆卸,或者在等待对文件的写入访问时阻塞。 如果可能的话,我想在许多交易中分摊这笔费用。 我不关心统计logging是否在C ++或PHP代码中完成。 我想知道如果一个好的方法是作为一个守护进程在服务器本身上运行,并接收统计数据包(可能是JSON或protobufs或其他打包格式)。 交付渠道将是一个sockets或一个pipe道或其他types的有效的IPC。 这些数据包将被收集成捆,并定期存储到数据库或以其他方式移出服务器。 效率是通过最小化每个数据包的处理,并分摊许多数据包的昂贵操作来实现的。 我的第一个问题:我上面概述的方法是否可行和最佳? 我应该考虑其他devise吗? 我的第二个问题:这感觉应该是已经存在的东西。 是否有任何Linux系统的通用工具接收,收集和转发统计数据包?