V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
qemu32
V2EX  ›  求职

楼主脱产研究 Linux 内核一年多,现在却找不到 Linux 内核开发的工作,想请教 v 有还有哪些工作跟我的能力是比较匹配的

  •  1
     
  •   qemu32 · 2023-01-31 17:54:09 +08:00 via Android · 10890 次点击
    这是一个创建于 422 天前的主题,其中的信息可能已经有所发展或是发生改变。

    楼主对内核的研究算是比较深入的,有给 lkml 发送过一些 kvm 虚拟化相关 patch ,虽然还没有被合入的,但都有收到过审阅者的回复:

    https://lore.kernel.org/all/?q=%22Dongli+Si%22

    本想凭着给内核贡献代码去找内核开发的工作的,现在却因为学历问题连个面试都没有(我高中都没毕业,今年 25 了也没去自考过啥学历),导致我都没法再激励自己继续去深入研究 Linux 了,想找个跟我的能力比较匹配的工作,请各位 v 友指点我比较适合去干什么。

    ps:不要说让我去考清华法学博士之类的话。

    109 条回复    2023-07-12 16:02:10 +08:00
    1  2  
    kinghui
        1
    kinghui  
       2023-01-31 18:04:43 +08:00   ❤️ 3
    大佬这是直接开地狱模式啊。/狗头

    以我的经验,这类工作本身不像业务开发有很多岗位,加上这类岗位恰恰是对学历要求比较高的一类,所以感觉你这是给自己开了个地狱模式。
    webcape233
        2
    webcape233  
       2023-01-31 18:04:51 +08:00 via iPhone
    学历太低,挺难的,在国内。 可以尝试从 linux 运维相关入手工作。
    henryhu
        3
    henryhu  
       2023-01-31 18:10:19 +08:00
    多看看其他开发领域,不要死磕内核开发
    adoal
        4
    adoal  
       2023-01-31 18:12:31 +08:00
    你不走常规的路,常规的路就不会让你走。还是去搞个学历吧。

    中国的 IT 内卷得这么厉害,招人卡学历并不是因为学历高一定有用(不过其实大多数时候还是有用的),而是作为一个概率意义上比较合算的人才过滤门槛。
    FabricPath
        5
    FabricPath  
       2023-01-31 18:12:38 +08:00   ❤️ 16
    这是一个死循环,没有相关的工作经历 -> 遇不到生产环境的 Bug 、收不到新需求 -> 难以深入研究某个模块 -> 只能做些边缘小修小补 -> 找不到工作 -> 无法获得工作经验

    还有一个问题是,内核本来就很难找工作,互联网公司里面,养内核团队的公司看不上你学历、不嫌你学历的公司养不起内核团队。

    对于这种情况,一律建议转 CURD ,先活下去、获得工作经验;如果继续在内核方向的话,需要选一个方向深入研究,争取混上某个模块的 Maintainer 。

    还有一个方向是嵌入式方向,一堆小公司魔改内核,也可以试试。
    sadfQED2
        6
    sadfQED2  
       2023-01-31 18:17:35 +08:00 via Android
    先搞个学历吧,高中都没毕业去哪都过不了 hr,就算过了 hr ,你就提了几个没被合并 patch 的水平也不值得破格录取
    yuzhibopro
        7
    yuzhibopro  
       2023-01-31 18:22:51 +08:00   ❤️ 2
    还不让说。不让说,你就继续头铁吧。
    qemu32
        8
    qemu32  
    OP
       2023-01-31 18:25:07 +08:00
    @sadfQED2 感谢回复,patch 没被合并我确实不敢说自己有多牛,但是 boss 直聘上投的的公司我都有问清楚,学历必须得是全日制,我投递的职位目前还没有因为我缺少一个自考的学历而把我拒掉的,那么我的情况自考个学历有用吗?或者说如果用处很小我还有必要花时间花精力搞个自考的学历吗?
    qemu32
        9
    qemu32  
    OP
       2023-01-31 18:28:33 +08:00   ❤️ 2
    @yuzhibopro 我是不想听讽刺的话:

    https://www.v2ex.com/t/804765

    就像这帖子 3 楼的回复,对楼主一点儿用都没有,就是拿楼主当笑柄,我哪里想得不对 v 友们可以批评指正,但讽刺是没有必要的。
    HENQIGUAI
        10
    HENQIGUAI  
       2023-01-31 18:28:57 +08:00
    买个网络教育,然后考研
    sadfQED2
        11
    sadfQED2  
       2023-01-31 19:03:42 +08:00 via Android
    @qemu32 考一个用处也不大,但总比没有强呀。退一步讲,你现在不去考学历,还没干啥呢。考学历就是死马当活马医。

    不考学历的话,除非你写出让 linux 加大版本号的功能,不然我认为你就算有几个被合并的 patch 也没啥用
    daimubai
        12
    daimubai  
       2023-01-31 19:14:08 +08:00
    挺佩服楼主的,能不去想未来专心研究一年多,我做不到,我在学习的时候就会很焦虑以后能不能找到工作而放弃,希望你可以顺利
    luckyrayyy
        13
    luckyrayyy  
       2023-01-31 19:15:48 +08:00
    找点非主流的远程工作呢?
    Mirana
        14
    Mirana  
       2023-01-31 19:19:17 +08:00
    越狱黑产之类的?
    FranzKafka95
        15
    FranzKafka95  
       2023-01-31 19:20:22 +08:00 via Android   ❤️ 3
    其实 OP 挺厉害的了,不过有这份能力为什么高中都没毕业你没有说明。现实生活中,能力比你强学历比你好的有不少,国内这么卷学历就是敲门砖。不过你可以试试一些国外的机会(英语够好的情况下),祝你好运。
    showgood163
        16
    showgood163  
       2023-01-31 19:23:21 +08:00
    看看国外的招聘网站上有没有相关职位?
    ivan_wl
        17
    ivan_wl  
       2023-01-31 20:06:58 +08:00
    楼主你好,请问坐标哪里?
    qemu32
        18
    qemu32  
    OP
       2023-01-31 20:10:59 +08:00
    @ivan_wl 深圳
    ivan_wl
        19
    ivan_wl  
       2023-01-31 20:14:11 +08:00
    @qemu32 方便加微信私聊?微信号同用户名
    bzzhou
        20
    bzzhou  
       2023-01-31 20:16:30 +08:00   ❤️ 1
    如果你在深圳,可以先从做 BSP 、内核移植、驱动这块开始切入,目前市场上这块需求多,门槛相对比内核低很多。
    Aloento
        21
    Aloento  
       2023-01-31 20:17:01 +08:00
    nnnnnnnnnnnnnnbbbbbbbbbbbbb
    nevin47
        22
    nevin47  
       2023-01-31 20:20:28 +08:00   ❤️ 31
    我看了一下 OP 的几个 MailList 的内容,主要局限在了几个 KVM 、perf 和工具的非核心点上,而且我不是太明白为什么大多数还聚焦在了 AMD 的 SVM 上面(是 OP 手上暂时只有 Zen 架构的芯片?)

    这几个贡献要作为内核工程师找工作的敲门砖说实话真的单薄了点。

    OP 如果还是想继续作为 individual researcher 参与到社区的话,我给几个不一定非常成熟的建议(最近两年我也没怎么搞虚拟化的部分了):
    1. 务必贴近主流架构,Zen 千言万语,还是比不上当前 Intel 的热度,甚至 ARM 虚拟化的热度都高于 Zen
    2. 如果非要在虚拟化领域找点,尽量跟踪当前社区中大的兴趣点,有个取巧的办法:追着大公司的 patch 走准能把握热点
    3. 找个相对大一点的研究中心,深入进去,提交一些大规模一点的、有意思的 RFC 上去,比零零碎碎的 patch 更容易吸引人

    祝 OP 能继续在 Kernel 中寻求到快乐
    zhangyichent
        23
    zhangyichent  
       2023-01-31 20:21:02 +08:00
    稍微大点的公司都卡学历(我们公司 80 个人都卡学历 211,985 才行),只能去小公司试试我觉得。
    nevin47
        24
    nevin47  
       2023-01-31 20:22:41 +08:00   ❤️ 3
    @bzzhou #20 20 楼的建议很中肯,Kernel 领域切忌闭门造车,先接触到实际的开发和需求了,才能跟随着社区一起成长。而且做操作系统需要不断补充体系结构的知识,自己闭门造车很难获取到所需要的知识
    iloveayu
        25
    iloveayu  
       2023-01-31 20:54:09 +08:00
    学历:先花钱研究个高起专,挂机练级,占不了多少时间和精力。
    工作:找找小厂的初级运维,以楼主的水平,日常的工作一个手就干了,还可以多摸摸设备,折腾折腾还能多套虚拟化实验环境,嘿嘿。因为学历问题,面试估计得找 HR 单聊或者朋友介绍了。
    研究 Linux 内核:不耽误,上班摸鱼看文档,下班回家接着折腾,坚持。
    litguy
        26
    litguy  
       2023-01-31 21:38:53 +08:00
    对 fs 和 block 子系统了解怎么样
    triptipstop
        27
    triptipstop  
       2023-01-31 21:41:53 +08:00   ❤️ 2
    我也是初中学历,一开始就没想着找工作。
    自己接单自己干,一个人的外包公司。
    后来靠着项目经验,面试很少有不过的。
    找工作是我挑公司,当然啦,都是小公司。
    至少是,从来没当过小弟,直接就是小领导。
    chuck1in
        28
    chuck1in  
       2023-01-31 22:01:50 +08:00 via iPhone
    @triptipstop 老哥为啥不继续接单要出来工作呢?是因为接单不好做吗?
    Rocketer
        29
    Rocketer  
       2023-01-31 22:08:20 +08:00 via iPhone   ❤️ 1
    说实话,我要是老板,也不信一个没学过高等数学和线性代数的人能把内核开发做得很好。
    Andy223
        30
    Andy223  
       2023-01-31 22:24:42 +08:00
    回去拿个本科学历,喜欢做研究的话,硕博读起来。现在这个学历,非常非常难,即使你很牛,实话实说。时代不同以前了,现在学历放水,没有学历的更加得不到机会。
    Andy223
        31
    Andy223  
       2023-01-31 22:25:21 +08:00
    @Andy223 不一定限制自己一定要在国内,英语学一下,出去读本科,很多地方本科都是 3 年,再加一年硕士 4 年。
    yangzhezjgs
        32
    yangzhezjgs  
       2023-01-31 22:36:07 +08:00
    可以考虑去国外弄个本科学历,像菲律宾之前看过新闻国内有人去买博士文凭,本科说不定也有渠道,你可以研究一下
    whyclong
        33
    whyclong  
       2023-01-31 22:37:03 +08:00 via iPhone
    想研究就上学历,想赚钱就搞企业需要的前端后端,搞内核,要不就是搞加速,然后卖钱。
    fanhaipeng0403
        34
    fanhaipeng0403  
       2023-01-31 22:39:00 +08:00
    不走常规路,难是正常的
    zw1one
        35
    zw1one  
       2023-01-31 22:39:30 +08:00
    哎 屠龙技没啥公司用得上
    8675bc86
        36
    8675bc86  
       2023-01-31 22:45:10 +08:00
    好巧,我也是做 kvm 研发的。
    Hsinyao
        37
    Hsinyao  
       2023-01-31 23:00:47 +08:00   ❤️ 6
    我做虚拟化的,在两家顶级大厂的 Kernel/虚拟化相关组呆过,你的 patch 网页里有个 review 你代码的人是我前同事。

    关于学历这块,就我个人呆过的组而言,从 40 多岁的经理 /组长到还没毕业的实习生,985 研究生学历概率接近 90%,研究生学历概率在 99%的样子(我只见过一个本科学历的社招员工)。

    建议改变方向,或者换个性价比较高的工作,将系统研究作为副业。
    yifangtongxing28
        38
    yifangtongxing28  
       2023-01-31 23:09:16 +08:00
    说点实话,楼主要是家境好,可以这么搞。如果一般,建议还是搞个来钱的行业。
    tool2d
        39
    tool2d  
       2023-01-31 23:19:39 +08:00
    没学历可以干独立开发啊。

    只要专心写业务,只做一件事,就比较容易成功。

    钻研内核这种耗尽你一生精力的爱好,一定要谨慎,你口袋里没足够的钱。
    meteor957
        40
    meteor957  
       2023-01-31 23:22:07 +08:00
    op 这毅力真的强,脱产研究一年,要我的话早焦虑的不行了。
    zsj950618
        41
    zsj950618  
       2023-01-31 23:49:01 +08:00
    脱产一年,总共 5 个 patch 。(好像都没合?)这个水平怎么想都达不到敲门砖吧?

    你如果坚信自己能不依靠学历证明能力,那起码要有其他能拿得出手的东西吧?恕我直言,就你那几个 patch 远远不够。
    xsen
        42
    xsen  
       2023-02-01 07:16:43 +08:00   ❤️ 1
    要做内核开发,光 patch 是远远不够的,还需要对整个内核有相对全面的学习与了解;另外,还要深入某 1-2 个子系统
    别说做内核,其实目前 lz 这样的情况连做嵌入式 linux 开发都不会有机会
    xsen
        43
    xsen  
       2023-02-01 07:21:47 +08:00
    很多楼上言比称大佬的人,不妨去看看 lz 所提及的 patch 。其实对于内核的 patch ,若有环境,大多数人都可以提交
    julyclyde
        44
    julyclyde  
       2023-02-01 09:24:56 +08:00
    @webcape233 你这话说的,运维和低学历有啥关系
    julyclyde
        45
    julyclyde  
       2023-02-01 09:26:29 +08:00
    @Rocketer 内核和高等数学没啥关系吧
    有人在内核里算微积分么

    线性代数大概能用的上
    nevin47
        46
    nevin47  
       2023-02-01 10:47:22 +08:00
    @julyclyde #45 他只是想做个比喻而已。简单来说没有接受过系统的学术训练的工程师,除非悟性超群,否则基本上连可靠的分析和性能验证都很难做得很好。我们组最近一年加入了很多新同事,都还是有至少 211 以上的学术背景的,基本上头两三个月做几个小的验证试验,都要返工个四五回才勉强能得到可靠的结果。内核领域和传统的软件开发领域在研究能力要求上差异很大,不是说学会写 C 语言就能开发内核了,往往需要匹配很强的体系结构知识,然后要有基础的硬件理解能力,才能说得上入了门
    fengjianxinghun
        47
    fengjianxinghun  
       2023-02-01 10:51:20 +08:00
    @julyclyde 用不上,内核连浮点都没有
    julyclyde
        48
    julyclyde  
       2023-02-01 11:09:26 +08:00
    @nevin47 感觉现在大学里好好教体系结构的都很少了……可能都挪到电子系那边去了?
    coderc
        49
    coderc  
       2023-02-01 11:16:18 +08:00
    @nevin47 我是本科,自学转编程,4 年 java 。真心请教:211 ,985 研究生阶段是有大量的实验或者课程帮助形成很强的体系结构知识以及硬件理解能力吗?我对计算机相关的知识很感兴趣(目前都是靠阅读一些原版书籍来学习,比如操作系统导论,Hands-on Booting Learn the Boot Process of Linux, Windows, and Unix 等等),但也不可能再回学校了,还是想接触下这块的经验,主动学习。
    qemu32
        50
    qemu32  
    OP
       2023-02-01 11:26:50 +08:00 via Android
    @itguy 看过数据从用户层写入到磁盘的整个 io 流程的代码,但没有研究过某一个具体的 fs ,也没有研究过 io 调度程序,不过我之前有做过分布式存储以及内核块设备层数据捕获相关的工作,也看过 nvme 和 virtio-blk 的代码。
    nevin47
        51
    nevin47  
       2023-02-01 11:27:23 +08:00
    @julyclyde #48 基本上 CS 的都有体系结构类别的课程的,只是很多同学基本都是刷刷题应付考试去了,真的学以致用要等工作以后了。。。。


    @coderc #49 本科阶段有通识课程,研究生阶段就要看方向了。有些 ML 方向的同学新来的时候,连 CPU 中 cache 和内存的区别都搞不清楚了。自学的话,我个人比较建议先看 CSAPP 扫清一些基础上盲区,然后可以配合 Mutlu 的体系结构课程系统入门体系结构,Mutlu 他非常喜欢把最新的课程放在他的 YouTube 上,可以去看看 22 年的更新了没有。基本上对体系结构的认知建立起来了,后面对操作系统的理解也就慢慢会成型了
    qemu32
        52
    qemu32  
    OP
       2023-02-01 11:28:05 +08:00
    UIXX
        53
    UIXX  
       2023-02-01 11:38:35 +08:00
    5 楼 6 楼说得差不多了。

    重点是,你所面对的就业并不是水平测试,而是选拔测试。
    即使你技术水平达到了,但在综合水平上不如别人,那就够不上台阶。更何况卡在学历这种硬指标上。

    破局的方法就是弄个文凭。
    coderc
        54
    coderc  
       2023-02-01 11:41:34 +08:00
    @nevin47 感谢回复,我去了解下你提到的。
    intLee
        55
    intLee  
       2023-02-01 12:00:32 +08:00
    先买个大专 才有上桌让人看见的资格 至于后期往上升 现在也可以成考专升本 自考研 没有学历 让桌子上的人低头看到你的概率太小了 即使你技术顶呱呱 /狗头
    uni
        56
    uni  
       2023-02-01 12:15:23 +08:00
    学英语,多混开源社区,跟他们交流然后解决他们关心的问题?
    Droog
        57
    Droog  
       2023-02-01 12:20:02 +08:00
    @HENQIGUAI 网络教育去年就全部停掉了!继续教育现在只有成教、自考、国开了!
    TtTtTtT
        58
    TtTtTtT  
       2023-02-01 12:20:08 +08:00
    不知道 Linux 内核社区有没有像 Apache PMC 这种比较正式的头衔。
    如果有的话,我觉得一定程度上比学历好用~
    nrtEBH
        59
    nrtEBH  
       2023-02-01 12:22:32 +08:00
    搞个开源项目 到处刷 star 成为社区明星 然后空降去中厂
    大厂就别想了
    MrHyde
        60
    MrHyde  
       2023-02-01 12:53:53 +08:00
    如果你仅仅需要一份工作,就去学 java ,或者 javascript ,或者 php
    Frankcox
        61
    Frankcox  
       2023-02-01 13:18:56 +08:00   ❤️ 4
    @qemu32 3 楼说的清华法学博士不是嘲笑楼主,而是以楼主的情况键政嘲笑某个人。。。。。
    shanks
        62
    shanks  
       2023-02-01 13:19:05 +08:00   ❤️ 1
    建议尝试往驱动、嵌入式方向发展,看看手机厂商、新能源御三家之类的。这类跟内核相关性较大,公司又不算太大,可能会开这个学历口子。虚拟化方向就不要搞了,这是互联网大厂、云计算基础设施才需要的技术,每年 985 应届毕业硕博一堆,都是优中选优自己培养,社招也是同级公司有实际工作经验的人。
    learningman
        63
    learningman  
       2023-02-01 13:36:11 +08:00
    @Frankcox #60 属于对社区完全没有意义的抖机灵,对提问人没有任何帮助。
    这种内容多了社区就烂掉了,参考知乎。
    Loserzhu
        64
    Loserzhu  
       2023-02-01 13:41:55 +08:00   ❤️ 1
    @qemu32 你要知道,那位大人也是法学博士。。
    liangtao927190
        65
    liangtao927190  
       2023-02-01 13:48:35 +08:00
    老哥,感觉最近各种车厂,开发车机的找 linux 的蛮多,要不要试试?特别是新势力,蔚小理什么的
    wuxidixi
        66
    wuxidixi  
       2023-02-01 13:49:07 +08:00
    真强,要是我脱产一个月就焦虑的不行了
    ljmsun
        67
    ljmsun  
       2023-02-01 13:50:56 +08:00
    在可预见的未来里,自考读研对你来说是最正确的一条路了。
    学历只是个敲门砖,但没有连门把都摸不上。读完研后不管之后是计划找工作,还是靠公务员什么的,至少把你可知的未来选项扩宽的很多,以后学历也不会是以后几十年里面的一个坑了
    bk201
        68
    bk201  
       2023-02-01 13:58:48 +08:00
    我觉得有时不需要太头铁,你都知道你缺什么了,为啥不去补呢?
    encro
        69
    encro  
       2023-02-01 14:00:15 +08:00
    @qemu32

    没有因为学历拒绝掉?-----------可能只是表达出来。

    另外---------很多公司看的都不会看,简历直接过滤了。

    而且--------未来工资上涨前途有限。。。。
    encro
        70
    encro  
       2023-02-01 14:01:36 +08:00
    如果想就职,那么选择前端,研究 js 和 ts 也能达到 2w ,就业对学历不严,而且岗位 10 倍。
    mosfet
        71
    mosfet  
       2023-02-01 14:11:44 +08:00
    @shanks
    都是大厂,也不大可能了,学历硬伤。还没牛到让人破格的程度。
    嵌入式 linux 跟 OP 的研究方案也风马牛不相及
    把学历补足到全日制大专也要花费 3 年
    可以考虑个人接外包项目锻炼一下
    脱产死磕,压力有点打
    elonlo
        72
    elonlo  
       2023-02-01 14:13:10 +08:00
    hr 小姐姐直接过不了。。。
    litguy
        73
    litguy  
       2023-02-01 14:25:02 +08:00
    @qemu32 有自己的 blog 或者 github 不,我让我司的人看看,对西安工作有兴趣不,我们作分布式存储
    tairan2006
        74
    tairan2006  
       2023-02-01 15:28:59 +08:00
    脚踏实地吧…高大上的工作职位少,门槛也更高,这是没办法的
    liuxu
        75
    liuxu  
       2023-02-01 15:57:48 +08:00
    别在软件圈混,今天中国的软件行业就是十几年前的印度,做基础研究的少

    去做硬件的公司,嵌入式物联网之类的找找,需要 linux 内核或者其他一些微内核的技术团队,最好花几个月补一些基础模电数电的知识
    qemu32
        76
    qemu32  
    OP
       2023-02-01 16:23:17 +08:00
    @litguy 没有 blog ,github 上也没啥能看的东西: https://github.com/donglisi

    我比较好奇做分布式存储的公司怎么会有内核层的开发需求?
    arthury007
        77
    arthury007  
       2023-02-01 16:29:36 +08:00 via iPhone
    没有学历就要有足够硬的敲门砖,比如成为审核组的成员,或者业界有个闻名的项目,不然你屁都不是,几个 patch 被拒的经历根本什么都说明不了。
    litguy
        78
    litguy  
       2023-02-01 16:54:02 +08:00
    @qemu32 block 层总有自己的 kernel driver 这类东西。你觉得没 kernel 的原因,我感觉可能是你用的是别的东西,他们用自己的 client lib 读写数据,最简单就像 etcd 用客户端那种模式。如果你只有应用层的东西,怎么给客户端一个块设备,或者一个 posix 兼容的文件系统。
    adoal
        79
    adoal  
       2023-02-01 16:58:04 +08:00
    @coderc 国内的话,你想要的这些实验或课程,指望研究生阶段恐怕还不如本科更现实。所以为啥很多单位会看第一学历呢。
    adoal
        80
    adoal  
       2023-02-01 17:01:50 +08:00
    @qemu32 比如 Ceph ,虽然服务端是用户态的,但如果要在客户端 mount 了当 vfs 用,就需要一个 CephFS driver
    wangxiaoaer
        81
    wangxiaoaer  
       2023-02-01 17:04:40 +08:00   ❤️ 1
    "脱产研究" "提交 patch"听起来很厉害,然后呢?

    1 你研究了啥?有什么可以分享给大家的吗?比如博客之类,否则怎么证明你的研究深度或广度?

    2 提交的 patch 没有被合并是否说明这个 patch 并不重要?

    这两点都无法证明你的能力达到了可以忽略你学历的地步。
    workerddd
        82
    workerddd  
       2023-02-01 17:26:34 +08:00
    能力强就当黑客得了,也别找厂上班了。
    jstony
        83
    jstony  
       2023-02-01 17:29:54 +08:00
    1. 能不能去考个自考证明一下基本的东西?
    2. 既然在深圳,太多做 linux 、android 系统定制的,能不能先找个小厂、小作坊干干?
    alexsunxl
        84
    alexsunxl  
       2023-02-01 17:41:27 +08:00
    先去找一下 linux 运维的工作呗
    dog82
        85
    dog82  
       2023-02-01 17:42:47 +08:00
    没有学历敲不开门,除非有人引荐。

    可以试着跟国内的 linux 内核大神谢宝友联系,他也是中专学历,如果获得他的引荐,拿个 offer 没问题。
    dog82
        86
    dog82  
       2023-02-01 17:45:16 +08:00
    不过话说回来,脱产研究一年 linux 内核也就学个皮毛吧,除非像 robert love 那种天赋极高的天才
    qemu32
        87
    qemu32  
    OP
       2023-02-01 17:45:17 +08:00
    @wangxiaoaer 实际上我这一年多研究的大部分内容都是不能通过给内核提交 patch 体现出来的,这里描述一下我还干了些啥:

    1 ,我能用单个 Makefile 编译 Linux 内核:
    https://github.com/donglisi/linux

    2 ,我给 kvmtool 实现了一个 64 位 bootloader ,可以直接从 vmlinux.bin ( objcopy vmlinux 产生)启动内核,不需要 bzImage:
    https://github.com/donglisi/note/blob/main/kvmtool_patch_bootloader

    3 ,我将 Linux 内核的伙伴分配器抽离出来形成了一个核心代码只有几千行的小项目还能可能跑得起来:
    https://github.com/donglisi/linux/tree/buddy

    因为我做上面这几件事本不是为了给别人看得,也就懒得描述太多,还有一些是我研究过但是没有形成一段有意义的代码或项目的,我也就不想提了。

    我发 patch 都是因为我发现了内核或 kvmtool 中确实存在的 bug ,这些邮件其实就涉及到 3 个问题:
    1 ,kvmtool 项目无法正常启动 linux 系统,这个问题最终被 google 的工程师解决,我作为 Reported-by 被记录在这个 commit 里:faae833a746f1c59f64fb05e9c08e62b5b0002eb ( Revert "kvm tools: Filter out CPU vendor string")

    2 ,amd 平台嵌套虚拟化 perf 工具无法采集数据问题,这个问题最终是 kvm 的内核维护者解决,我的价值主要体现在指出了腾讯的 Like Xu 之前的 commit 的一个小问题,他当时没有彻底搞明白一个很相关的问题,还在回复我的第一封邮件时说我写的一段内容“ridiculous”,结果被我回怼回去了。

    3 ,最近给 kvmtool 提交的这个 patch 是因为 kvmtool 有个存在多年的老问题一直没人解决导致我用出 bug 了,我觉得在这个问题被彻底解决以前研究这个问题都是有价值的。

    最后,
    “脱产研究” 是事实,我这么说不对吗?
    “提交 patch” 是你说的,我说的是“发送 patch”,
    “听起来很厉害” 是你说的,我没说我很厉害,我就说了 “我对内核的研究算是比较深入的”。

    我发这个帖子纯粹就是想给自己找找其他机会,不是来吹牛逼什么的,请你不要误会。
    402124773
        88
    402124773  
       2023-02-01 17:56:01 +08:00
    @qemu32
    如果楼主在深圳,可以随便找一个内核驱动的方向,研究下,写几篇文章或者给内核那边提交点 patch ,然后往手机厂 /电视厂那边的驱动部门去试试。只是一个方向性的建议。
    我觉得主要还是你之前研究的这个方向太窄了。
    根据你 87 楼的回复,我觉得工作内容上去做这种肯定是没有问题的。只是看看你是否愿意去从小公司做起。
    qemu32
        89
    qemu32  
    OP
       2023-02-01 18:17:14 +08:00
    @litguy 我之前工作中做过的那个分布式存储项目没有给客户端一个块设备或文件系统的需求,只是为了给虚拟机用的,也就是给 Qemu 写了一个块设备模块,另外分布式存储最有挑战性的部分都是在服务端,客户端应该不会有非常重的开发需求,贵公司会专门请个搞内核的人来做客户端吗?
    tool2d
        90
    tool2d  
       2023-02-01 18:17:57 +08:00
    感觉没什么太好的办法证明 OP 编程能力很强。

    可能只有多堆一点让人仰望的 github 代码,或者录制一点教学视频,或者刷刷题打排名?

    HR 选择人才跳槽的三大要素之一,过往有成功的产品,也不是完全没道理。
    qemu32
        91
    qemu32  
    OP
       2023-02-01 18:25:56 +08:00
    @tool2d 我没说我编程能力很强,我比较强的部分在于计算机的基础理论知识,过去一年多看了很多这方面的书,之前其实还有面试过阿里的服务器固件和驱动开发(外包),问我理论知识我都没问题,但算法题我都做不出来。
    alne
        92
    alne  
       2023-02-01 18:45:51 +08:00 via Android
    @qemu32 #90 的意思也不是说你说自己编程能力强啊
    他的意思是你得证明自己能力强到公司愿意收你的程度

    你这理解能力多少也有点问题啊
    qemu32
        93
    qemu32  
    OP
       2023-02-01 18:55:02 +08:00
    @alne 我理解他的意思,我只是想借着他的这个回复说明我并不觉得我编程能力很强。
    qemu32
        94
    qemu32  
    OP
       2023-02-01 19:12:51 +08:00
    @jstony 自考能证明什么基本的东西呢?
    litguy
        95
    litguy  
       2023-02-01 19:59:17 +08:00
    @qemu32 只是举例子,我们没有客户端,服务器端出来就是内核块设备,OS 的 /dev/ 目录下的,scst 用这个内核 export 的块设备将卷服务提供给 iscsi 用户
    TonyG
        96
    TonyG  
       2023-02-01 20:21:31 +08:00   ❤️ 1
    kernel 级的东西,不是信创产业就是大厂,要么足够多的 pr 证明让技术负责人内推,要么学历、工作经历足够让不懂技术的 HR 眼前一亮,否则就像自学人工智能一样,很难在职场找到工作。
    xsen
        97
    xsen  
       2023-02-01 20:40:06 +08:00
    与其研究内核提交某些边边角角的 patch ,还不如深入某些方向
    1. usb 或 pcie 子系统
    2. 图形,包括 gpu 驱动、图形引擎,诸如此类

    特别是#2 ,相对来说需求是越来越多
    WuSiYu
        98
    WuSiYu  
       2023-02-02 05:29:59 +08:00 via iPhone
    OP 或许可以看看 PLCT 实验室的实习?中科院软件所的,主要做开源和 riscv ,我记得有 qemu 的岗位
    hhaobao
        99
    hhaobao  
       2023-02-02 09:37:42 +08:00
    @qemu32 op, 我们这边有一些内核开发相关的, 加我微或电话联系下? MTgwMDMwMTgyNDE= (base64 解码)
    lechain
        100
    lechain  
       2023-02-02 10:10:19 +08:00
    @qemu32 回复#91 ,我觉得 OP 没有理解#90 楼老哥的好意,他不是在说你编程能力强不强(其实这也跟他没关系),他只是在提醒你 “感觉没什么太好的办法证明 OP 编程能力很强。”,因为现在外面找工作看的比较重要的一点就是编程能力,其实#90 楼老哥只是在帮 OP 补充漏掉的内容,OP 可能需要想办法证明自己的编程能力
    但是看 OP 后来的回复,又说自己觉得编程能力不强,我也不知道怎么说了,想找工作,觉得自己能力强不强不重要,重要的是你要有能力,并且让招聘方也觉得你有能力,

    - 编程能力很重要,至少在升到管理或者架构师水平前很重要
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   964 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 35ms · UTC 20:48 · PVG 04:48 · LAX 13:48 · JFK 16:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.