Linux内核 | 进程调度

1. 进程调度原理最大限度地利用处理器时间,只要有可以执行的进程,那么就总会有进程正在执行。按多任务系统分类抢占式多任务非抢占式多任务按进程分类IO消耗型:进程的大部分时间用来提交I/O请求或是等待I/O请求。处理器消耗型:进程的大部分时间在执行代码1.1 进程优先级根据进程的价值和其对处理器的时间需求对进程进行分级。Linux采用了两种优先级范围nice值,范围[-20,19],nice值越大,

- 阅读全文 -

Linux内核 | 进程管理

1. 进程和线程1.1 定义进程是处于运行状态的程序和相关资源的总称,是资源分配的最小单位。线程是进程的内部的一个执行序列,是CPU调度的最小单位。有一段可执行程序代码。有一段进程专用的系统堆栈空间和系统空间堆栈。有进程描述符,用于描述进程的相关信息。有独立的存储空间,也就是专有的用户空间,相应的又会有用户空间堆栈。Linux系统对于线程实现非常特殊,他并不区分线程和进程,线程只是一种特殊的进程罢

- 阅读全文 -

C++错误 | 不兼容类型void *分配给char *

在C++中,malloc这样使用,会报错assigning to 'char ' from incompatible type 'void ',而C语言不会报错。char * ver =malloc(size);你需要进行强制类型转换char * ver = (char *) malloc(size);C语言对类型检查比较宽松,而C++要求就比较严格,malloc()返回是数值类型是void,所以

- 阅读全文 -

读书笔记 | 人性的弱点 - 切忌批评、责怪或抱怨他人

真心取蜂蜜,蜂房不能踢原则一:切忌批评、责怪或抱怨他人。批评是徒劳无益的,因为它会使人采取防御手段,而且往往使人竭力替自己辩护。批评也是危险的,因为它会伤害一个人那可贵的自尊、自重感,同时还会激起他的反感情绪。--戴尔·卡耐尔 世界知名心理学家B.F.斯金纳通过无数次的实验证明.相比因表现糟糕而受到惩罚的动物,因表现良好而得到奖赏的动物会学得更快,对所学东西的效果也保持得更久一些。后来的种种研究

- 阅读全文 -

搞机吧 | 利用magisk安装Xposed框架

<center>后起之秀Magisk和江湖老大哥Xposed</center>Magisk原理:在系统boot时,将其img挂载到自己的分区下,构建一个虚拟文件系统,和system分区没有半毛钱关系。magisk可在不修改系统文件的前提下,从而达到修改系统文件的效果。通过这种方式绕过Google SafetyNet,系统OTA升级,部分"被禁"软件都可以正常使用。Xpos

- 阅读全文 -

搞机吧 | 刷rec、线刷、卡刷教程

刷rec(Recovery)资源准备前提先BootLoader解锁小米5一台笔记本一台下载TWRP官网搜索手机型号,如果打不开请翻墙。例如:twrp-3.2.3-0-gemini.img下载adb USB连接工具包 (需翻墙)Google ADB通讯工具包,版本是r25。详细步骤在开发者界面打开USB调试,勾选允许OEM解锁。将adb USB连接工具包解压后得到adb和fastboot,

- 阅读全文 -

爬坑 | keil5代码容量限制问题解决

KEIL如果不破解的话,会有32K代码容量的限制,超过32K则编译不了。我还以为是bug调了好久,从半夜一点调到两点多,蓝瘦蓝瘦好气好气哦。需要注册机,可后台留言。免费的

- 阅读全文 -

机器学习 | 决策树 理论篇

决策树学习的目的是为了产生一棵泛化能力强,即处理未见示例能力强的决策树。决策树学习的关键在于如何选择最优划分属性。我们希望决策树的分支结点所包含的样本尽可能属于同一类别,即结点的“纯度”(purity)越来越高。经典的属性划分方法信息增益增益率基尼指数信息增益“信息熵”是度量样本集合纯度最常用的一种指标。 <div align=center></div>属性a对样本集D进行

- 阅读全文 -