linux
tang05505622334
这个作者很懒,什么都没留下…
展开
-
实时内核中,使用chrt设置进程和线程的实时调度属性
安装了带实时补丁的linux内核后,就可以让指定的进程或者线程拥有实时优先级。有一些系统调用可以在代码中来精细控制线程和进程的优先级,如果不方便修改代码,则可以通过chrt命令来达到这个目的。关于实时优先级和实时调度算法,可以参考linux文档:http://man7.org/linux/man-pages/man7/sched.7.html。简而言之,linux中有五种调度策略:非实时调...原创 2019-12-10 17:16:57 · 4105 阅读 · 1 评论 -
使用实时补丁内核的ubuntu中安装nvidia显卡驱动
根据上上篇的博客,安装了打了PREEMPT_RT实时补丁的内核。在我的应用场景中,是想在一台机器上同时能够使用两种内核,并且在nvidia-docker中,跑一个需要用到显卡的程序。结果发现在实时内核中,非实时内核中装好的显卡驱动不能用,直接使用apt install nvidia-410又说已经update了。如果系统是刚装的,非实时内核中还没有装过显卡驱动,直接在实时内核中apt inst...原创 2019-12-10 15:52:42 · 3897 阅读 · 3 评论 -
ubuntu修改默认启动的linux内核
修改/etc/default/grub这个文件中的配置可以达到目的。这个文件里,找到GRUB_DEFAULT所在的行。默认这个值是0,这个0对应的就是开机的时候,引导界面的第一行,如下图就是Ubuntu(如果什么都不动,这里高亮的应该是第一行Ubuntu,在用户没有动作的时候,过几秒就会用这一项来引导启动)。在高级选项中,还有其他的内核:如果这里我们想把第四行的4.15....原创 2019-12-10 15:47:48 · 1216 阅读 · 0 评论 -
linux内核中PREEMPT_RT实时补丁的安装
本文参考了两篇博文:https://blog.csdn.net/zzsfqiuyigui/article/details/7621665https://www.jianshu.com/p/8787e45a9e01根据我自己安装的实际情况做了一些小的修改。1、下载内核代码和补丁Kernel:http://www.kernel.org/pub/linux/kernel/P...原创 2019-12-10 15:27:07 · 1237 阅读 · 0 评论 -
WARNING: perf not found for kernel 4.16.18
尝试运行perf,发现没安装$ perf程序“perf”尚未安装。 您可以使用以下命令安装:sudo apt install linux-tools-common按照提示安装了linux-tools-common,然后再运行perf:$ perfWARNING: perf not found for kernel 4.16.18 You may need to inst...原创 2019-11-13 21:01:09 · 8121 阅读 · 1 评论 -
查看文件被哪个vim进程打开(查找swap文件的位置)
假设用vim打开了一个叫abc.txt的文件(假设此时值打开了一个vim进程,可以用pgrep vim看到该进程的进程号,用于验证后续找到的vim进程号是否正确)通常可以使用lsof或者fuser这两个命令来查看文件的被占用情况。在该文件的路径下,使用如下命令:(1)lsof abc.txt(2)fuser abc.txt会发现都没有输出。这是因为vim实际上占用的并不是abc.t...原创 2019-08-22 11:12:29 · 1958 阅读 · 0 评论 -
在python里调用C++带参数的类方法
核心思路:python的底层是用C实现的,所以理论上python可以调用C的代码。如果想调用C++的代码,需要另外将C++代码通过extern "C"包含起来,使其命名修饰等符合C的规则然后将C/C++代码打包成一个.so文件(这一步有个坑,我用bazel编译的.so被import到flask项目中时,会导致整个服务以exit code 245退出,但是直接在python脚本里调用是没...原创 2019-08-01 14:41:50 · 3098 阅读 · 0 评论 -
taskset命令:查看、指定进程运行在哪个cpu上
reference:https://baijiahao.baidu.com/s?id=1592330790387359245&wfr=spider&for=pchttps://www.cnblogs.com/LubinLew/p/cpu_affinity.html1、CPU亲和性(cpu affinity)CPU affinity 是一种调度属性(schedu...原创 2019-07-19 11:43:35 · 1777 阅读 · 0 评论 -
isolcpu参数 隔离cpu使其不被自动调度(linux 修改boot参数)
我的系统是Ubuntu16.04,以下方法在我的系统上测试有效首先需要说明的是,隔离cpu对用户空间的进程有效,但是对内核的进程无效,所以被隔离的cpu并不是完全空闲的。(参考:https://unix.stackexchange.com/questions/282256/isolcpus-kernel-parameter-has-no-effect-on-ubuntu-16-04-de...原创 2019-07-19 11:40:28 · 12952 阅读 · 1 评论 -
获取另一个脚本中定义的指定变量的值
例如有脚本test.sh,其中定义了两个变量:bag=1log=2有另外一个脚本test2.sh,在其中想获取test.sh的log变量的值,并且test2.sh本身有一个bag变量,不希望这个变量的值被影响到。bag="known"log="unknown"如果直接使用source,会使bag变量被覆盖:bag="known"log="unknown"...原创 2019-05-15 17:17:59 · 1445 阅读 · 0 评论 -
tmux下ls目录没有颜色
根据网上所说,在~/.tmux.conf中加入:set -g default-terminal "screen-256color" 之后仍然无效。 可以试一下在tmux里面,ls --color可不可以有颜色。如果可以的话,则在~/.bash_profile中增加对ls的alias:alias ls="ls --color"注意,在~/.bashrc中加是无效的,tmux读...原创 2018-11-05 19:21:40 · 2101 阅读 · 0 评论 -
为啥文件有写权限还是说只读
chattr可以防止关键文件被修改在linux下,有些配置文件是不允许任何人包括root修改的,为了防止被误删除或修改, 可以设定该文件的"不可修改位(immutable)"。 例如: chattr +i /etc/fstab 如果需要修改文件则: chattr -i /etc/fstab 以后再修改文件。原创 2017-11-26 18:55:54 · 1760 阅读 · 0 评论