摘要:
内容:(1):从schedule()开始,几种不同类型的进程之间的调度选择;在相同类型的进程之间的调度选择算法(2):从CPU的IP值的变化上,说明在switch_to宏执行后,执行分析(3):堆栈发生切换位置,在切换堆栈前后,current_thread_info变化(4):地址空间发生切换,解释地址空间的切换不会影响后续切换代码的执行(5):current宏所代表的进程发生变化的源码位置(6):任务状态段中关于内核堆栈的信息发生变化源码位置1,从schedule()开始,说明几种不同类型的进程之间的调度选择;在相同类型的进程之间的调度选择算法。在schedule()函数中,首先禁止抢占,获 阅读全文
摘要:
内核编译解决boot分区空间不足问题:gzip: stdout: No space left on device E: mkinitramfs failure cpio 141 gzip 1 阅读全文
摘要:
该算法采用分治法,将问题分解为两个子问题,合并的复杂度为O(n),所以时间复杂度为:T(n)=2*T(n/2)+n
通过推倒得到算法复杂度为O(n*logn)。
在算法开始前对数据有按照x轴坐标排序,采用复杂度为O(n*logn)的算法,得到最终算法复杂度为O(n*logn)。 阅读全文
摘要:
区间树,在红黑树的基础上对其进行拓展,增加max域,上限high域,下限key值。利用原key值表示区间的下限,并将key值作为插入时比较的值。通过max来对左子树、右子树及该节点的区间上限做出描述。 阅读全文
摘要:
插入过程分为两大部分,即1)插入到树中2)维持红黑树性质
1)根据节点key值,插入时P节点的左子树均小于该节点key值,右子树各节点均大于p节点的key值,根据这个特征,如果小于p的key就到p的左子树寻找,否则到p的右子树。
2)在插入一个节点到树中后,会引起不满足红黑树定义的变化,需要进行调节。调节方法有三种:1、调节颜色,2、左旋,3、右旋。不满足红黑树条件的原因是,插入时父节点为红色(或为根)。 阅读全文
摘要:
在快排原方法中,选择比较元素为数组最后一个元素。通过随机函数,避免最坏情况。当划分单位较小时,采用插入排序,提高算法速度。 阅读全文