- 博客(18)
- 收藏
- 关注
原创 慢慢欣赏linux CPU占用率和负载
CPU使用率如何计算,可以参考busybox的实现其原理是每隔5s读一次/proc/stat,两次的值相减作为CPU占用率。/proc/stat的含义详见附件。int top_main(int argc UNUSED_PARAM, char **argv) cpu_jif = &cur_jif; cpu_prev_jif = &prev_jif; ...
2018-12-23 07:22:17 383
原创 慢慢欣赏linux switch_to学习
进程切换switch_to()注释https://www.cnblogs.com/hmxb/p/4919228.html7.switch_to到底干了啥?https://www.aliyun.com/jiaocheng/1379160.htmlswitch_to宏第3个参数分析https://blog.csdn.net/mousestuman/article/details/1701...
2018-12-20 07:23:08 967
原创 慢慢欣赏linux 思考中的问题
进程调度:CPU占用率是如何计算,为什么会有200%的情况内存管理:内存占用率是怎么计算内存管理:zone域的初始化默认min low max水线是怎么定义内存管理:mmap访问文件和fread/fwrite相比,有什么差别内存管理:copy_to/from_user的原理,内核态对用户态空间的安全访问文件系统缓存:只读的缓存如果别的进程写打开访问如何处理;已有的文件系统缓存4K页面里面...
2018-12-16 22:42:09 3226
原创 慢慢欣赏linux MTD flash
static int __init h720x_mtd_init(void) h720x_map.virt = ioremap(h720x_map.phys, h720x_map.size); simple_map_init(&h720x_map); mymtd = do_map_probe("cfi_probe", &h720x_map); ...
2018-12-15 22:11:33 163
原创 慢慢欣赏linux PCIe总线
Whenever the PCI Express controller is in root complex mode and it receives an inbound INTx asserted or negated messages transaction, it asserts or negates an equivalent internal INTx signal to the PI...
2018-12-15 21:44:40 356
原创 慢慢欣赏linux 进程的领头线程 领头进程 领头会话
SYSCALL_DEFINE0(getpid) return task_tgid_vnr(current); =>static inline pid_t task_tgid_vnr(struct task_struct *tsk) return pid_vnr(task_tgid(tsk)); =>static inline st...
2018-12-15 20:46:30 397
原创 linux shell运用16进制计算
((test=0x1234))echo $testif [ $test -eq 4660 ]; then echo helloelse echo not hellofilinux-shell 脚本转换 十六进制 十进制 八进制 二进制-zt http://www.51testing.com/html/00/130600-867618.html...
2018-12-15 20:36:17 13517
原创 linux shell获取环境变量运算
很多shell运算需要获取环境变量,例如a+b,其中a或者b可能都来自于环境变量。但是环境变量可能出现不存在的情况,这时运算就会出错。 所以在计算前需要判断其是否存在[ -z $test ]更复杂的 input=$1test_mode=$2if [ -z $test_mode ]; then ret=1elif [ $test_mode -eq 1234 ] ...
2018-12-09 22:11:23 6089
原创 printk以及dmesg和syslog
内核日志及printk结构浅析 http://blog.chinaunix.net/uid-20543672-id-3211832.html
2018-12-09 22:10:51 933
原创 linux shell通过dd命令去掉文件头部
uboot加载Initrd时需要将intrd加0x40个字节;如果想解压的话需要把这些字节去掉。这时可以用dd命令dd if=src of=des skip=1 bs=64其中skip表示跳过if的多少个块开始拷贝;bs=BYTES,即一个块有多少个字节。man dd里面讲得很清楚。可以参考...
2018-12-09 22:10:18 3880
原创 TCP协议和UDP协议区别
TCP协议和UDP协议区别https://www.cnblogs.com/sea-stream/p/10086376.html
2018-12-08 21:30:18 120
原创 慢慢欣赏linux 进程和线程(二)
简单来说,单独跑起来的应用程序就是进程,一般有独立的地址和数据空间;单独跑起来的函数就是线程,一般没有独立的地址和数据空间,但是有独立的pid。...
2018-12-08 21:26:23 114 1
原创 慢慢欣赏linux cfs进程调度
nice越高,意味着可以抢占低优先级的进程;另外意味着有更多运行时间。CFS决定下一个调度的进程是靠虚拟时间来决定。虚拟时间(virtual time)=k*进程累计运行的物理时间/权重。权重由nice来决定。所以进程调度的核心是追求虚拟时间相等。对于CPU消耗型的进程,进程累计运行时间长,虚拟时间长,所以被调度的可能性降低;对于IO消耗型的进程,进程累计运行时间短,而且nice小,所...
2018-12-07 22:22:50 155
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人