
Linux
SUKI547
从放弃到入门
展开
-
解决memory cgroup下无memsw.xx设置项
问题描述在cgroup中对内存进行管理,发现只有memory.xx设置项,没有memsw.xx解决方法这是内核不支持内存限制,需要对启动项进行更改vim /etc/default/grub..GRUB_CMDLINE_LINUX="cgroup_enable=memory swapaccount=1"..#更新update-grub#重启reboot再次查看 /sys/fs/cgroup/memory成功解决...原创 2021-01-07 18:47:33 · 652 阅读 · 0 评论 -
进程结构体tast_struct, sched_entity, 源码
3.16.0-43-generic #58~14.04.1-Ubuntu SMPstruct sched_entity { struct load_weight load; /* for load-balancing */ struct rb_node run_node; struct list_head group_node; unsigned int on_rq; u64 exec_start; u64 sum_exec_runtime; u64 vruntime;原创 2020-12-03 16:55:40 · 583 阅读 · 0 评论 -
[Cgroup笔记]基础知识:子系统subsystems、层级hierarchies、任务tasks及它们之间的关系
文章目录简介子系统subsystems层级 hierarchies任务tasks使用方法实例1实例2简介Cgroup 可让您为系统中所运行任务(进程)的用户定义组群分配资源 – 比如 CPU 时间、系统内存、网络带宽或者这些资源的原创 2020-11-27 17:18:16 · 1325 阅读 · 0 评论 -
E558: Terminal entry not found in terminfo ‘screen.linux‘ not known.
问题terminal vim 文件之前会显示E558: Terminal entry not found in terminfo'screen.linux' not known. Available builtin terminals are: builtin_amiga builtin_beos-ansi builtin_ansi builtin_pcansi builtin_win32 builtin_vt320 builtin_vt52原创 2020-11-26 16:01:48 · 1325 阅读 · 0 评论 -
bash: Error: Could not find or load main class
问题在解决了root用户下java command not found问题后,使用bash调用java显示Could not find or load main class解决方法还是由于root用户的搜索路径与普通用户的差异。在调用java那行强制指定classpathJAVA_HOME=/usr/java/jdk1.8.0_211APP_HOME=/home/username/Documents/demo/#原命令 java Main 改为带完整classpath的 java -cp 并指原创 2020-11-26 10:58:38 · 416 阅读 · 0 评论 -
普通用户切换root 后 java: command not found解决方法
问题当初安装java是在用户态下安装的,在切换root用户时发现没有安装java提示安装,打印PATH无反映。问题应该是由于root态下文件搜索路径改变导致找不到jar包。网上搜了几个答案解决方案如下。解决方案编辑/etc/environment 网上说把当初设置/etc/profile的java环境变量写入这里,注意不要export 。由于当初乱该配置文件导致过系统崩溃,觉得还是不要动比较好。该方案没有采用。编辑/etc/sudoers 采用并成功。vi /etc/sudoers#在se原创 2020-11-26 10:39:59 · 2650 阅读 · 2 评论 -
【Linux内核笔记】Linux进程地址空间:内存描述符,虚拟内存区域
文章目录地址空间地址空间进程地址空间——进程可寻址的虚拟内存,内核允许进程使用该虚拟内存中的地址每个进程有32/64位的flat(独立的连续)地址空间内存区域(memory areas)——进程允许访问的虚拟内存的地址区间进程访问了不在有效范围内的内存区域,或不正确的访问方式访问了有效地址,内核会终止该进程,返回“段错误”信息 segment fault内存区域可以包含各种内存对象代码段 text section——可执行文件代码的内存映射数据段 data section——可执行文件原创 2020-11-20 16:42:45 · 728 阅读 · 0 评论 -
【Linux内核笔记】内核内存管理
文章目录页区获得释放低级页kmalloc()gfp_mask标志vmalloc()slab层在栈上静态分配高端内存的映射每个CPU数据总结:分配函数的选择页内核管理内存的基本单位每个物理页都由struct page表示,位于<linux/mm_types.h>。 假设每个结构体40byte, 物理页8KB, 4GB物理内存。则有2182^{18}218页,结构体占用20MB,并不大。struct page{ flags //页状态 _count//引用计数,-1当前内核没原创 2020-11-17 11:12:12 · 366 阅读 · 0 评论