- 博客(2)
- 收藏
- 关注
原创 Libco中协程切换的详细讲解
Libco的核心在于coctx_swap.S,也就是两个协程之间的切换。这块会涉及到一些汇编代码。首先应该先说一下栈帧的知识,这里我们只说x86-64的栈这里说下各个寄存器的用途:%rax 作为函数返回值使用%rsp 栈指针寄存器,指向栈顶%rdi,%rsi,%rdx,%rcx,%r8,%r9 用作函数参数,依次对应第1参数,第2参数%rbx,%rbp,%r12,%r13,%14,%15 用作数据存储,调用子函数之前要备份它,以防他被修改。其中%rbp作为栈底。%r10,%r11 用作数据
2021-08-23 20:50:30 280
原创 算法:动态规划:求最长字段
01. 算法:动态规划:求最长字段令n个数为x[]={x1,x2,x3…xn},设m[j]是以x[j]开头的一个最长单调递增序列,其长度为c[j]设原问题的所求最优解是:max{c[j]},显然,c[j]有下面递归式成立:c[j]=max{max{c[k]}+1,1}j=k<=n&&x[j]<=x[k]注:动态规划就是要把大事化小,小事化了,我们j从n开始,...
2018-11-05 23:44:23 420
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人