- 博客(4)
- 收藏
- 关注
原创 __builtin_expect用法
__builtin_expect说明GCC提供了一系列builtin函数,下面对__builtin_expect(EXP, N)函数进行说明。__builtin_expect(EXP, N)说明 EXP == N的概率很大。likely\unlikely在linux中likely()和unlikely一般都是封装__builtin_expect来实现/* 去两次!个人认为是为了更好的和0或者1进行比较 */#define likely(exp) __builtin_expect(!!(exp),
2022-03-19 09:40:21
2535
转载 KMP算法详解
在介绍KMP算法之前,先看下一般得解法。主字符串以下简称位(T)模式串以下简称位(P)题目: 在字符串T"abcdefghijk"中查找P"abce",如果出现就返回P得具体位置,否则返回-1.一般的解法int my_strstr(char * T, char * P) { int lenT = strlen(T), lenP = strlen(P); int i = 0, j = 0; int res = -1; for (i = 0; i <= (lenT
2022-03-01 19:39:56
290
原创 linux printk
printk如何调用底层驱动?printk->vprintk_func->vprintk_default(在未定义CONFIG_PRINTK_NMI)->vprintk_emit->console_unlock->call_console_drivers(通过遍历console_drivers(for_each_console))->(con->write)asmlinkage __visible int printk(const char *fmt, ...)
2022-02-16 19:26:51
727
原创 earlycon
首先你需要定义一个对应的串口OF_EARLYCON_DECLARE(s3c2440, "samsung,s3c2440-uart", s3c2440_early_console_setup);OF_EARLYCON_DECLARE作用主要是在__earlycon_table段记录你earlycon对应的地址,以便后续能够找到。#define OF_EARLYCON_DECLARE(_name, compat, fn) \ _OF_EARLYCON_DECLARE(_name, comp
2022-02-11 15:18:53
847
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人