Driver 分层的思想 -- Linux Kernel 内核实现欣赏

先来喷一下Kernel中的一段code

int tty_register_ldisc(int disc,struct tty_ldisc_ops * new_ldisc)
{
    /*
     一看到这个flags,你就能想到下面的代码了吧,哈哈
     不过,加上这个变量,还真是好. 
    */
    unsigned long flags;

    int ret = 0;

    /*
        上来就对线路规程号码做校验. 

        不管别人传什么东西进来你自己不出事,处理不了就抛异常,
        这样真的很好吗 ? 不管好不好,Linux Kernel在处理这块的时候,
        就是这样做的,而且屡试都爽,我 C!

        不暴露给外界的内部组件函数,自己用的,性能要优于健壮性吧.

        好吧,作者说 天太热,你裸奔去吧,穿衣影响散热的性能 ,是吧,哈哈! 
        不怕一万,就怕万一,是吧 ? 这一万个机会被你这一个万一给挡住了,还要再送9999次,这不是最大的损失吗,
        代码还能暴动、革命,还是咋的 ?

        Linux Kernel 把 函数调用者是当贼一样防,自己调用的也防,真是多此一举!
    */
    if (disc < N_TTY || disc >= NR_LDISCS)
        return -EINVAL;

    ......

    return ret; 
}

一 : Input 子系统的分层

猜你喜欢

转载自blog.csdn.net/leesagacious/article/details/77170670