V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Sponsored by
LinkedIn
不坐班的神仙工作 · 去任何你想去的地方远程,赚一线城市的工资
2000 个不用出门 Social 的全球远程工作,帮助 V2EX 的小伙伴开启全新的工作方式。
Promoted by LinkedIn
passer9527
V2EX  ›  职场话题

32 岁的客户端开发,想转 Linux ,大佬们给点意见

  •  1
     
  •   passer9527 · 136 天前 · 1742 次点击
    这是一个创建于 136 天前的主题,其中的信息可能已经有所发展或是发生改变。
    本科毕业 9 年了一直做 android 客户端开发,今年进了家新公司换了个岗位做 android 系统方面的开发,可能有机会接触 linux 。
    目前没什么 C/C++经验,只处于能基本看懂代码的阶段。
    csapp 后面几章最近看完了,大概了解了编译链接,虚拟内存的基础知识。
    想往 linux 方向转,内核或者驱动啥的,还有机会吗,该怎么学习?
    youtume
        1
    youtume  
       136 天前 via Android
    32 还年轻,有啥不行的。不过学新东西比较辛苦。你转 Linux ,是要做应用开发,还是研究内核?
    passer9527
        2
    passer9527  
    OP
       136 天前
    @youtume 想研究内核,不知道多久才能步入门槛
    youtume
        3
    youtume  
       136 天前 via Android
    我跟你情况一样,除了年龄比你大。我觉得研究 aosp 应该都要花很多时间,怕是没精力搞内核
    passer9527
        4
    passer9527  
    OP
       136 天前
    @youtume aosp 的我是打算上班的时间,边干活边研究了
    业余的时间就花在 linux 上
    StonyGround
        5
    StonyGround  
       136 天前
    老哥,我跟你经历差不多,今年 30 做了七年 Android ,想往系统方面转,但是也就停留在 linux 的基础使用上面,编译过 aosp 但是也没怎么研究过源码或者尝试裁剪过。目前刚开始学 rust 从零做一个操作系统,就是照着别人的教程来,目的是把系统各方面都了解下。
    jackbrother
        6
    jackbrother  
       136 天前
    为啥要转?
    leirenbb
        7
    leirenbb  
       136 天前
    楼主之前上层开发比较多吗
    passer9527
        8
    passer9527  
    OP
       136 天前
    @StonyGround 之前怎么学的? 先掌握 c/c++?

    @jackbrother 兴趣?

    @leirenbb 9 年都是 app 开发
    StonyGround
        9
    StonyGround  
       136 天前
    @passer9527 没有系统学过 c ,感觉语言并不是最大的障碍,系统设计才是
    bojue
        10
    bojue  
       135 天前
    @jackbrother 应用层简单的话做多了确实无聊
    xsen
        11
    xsen  
       135 天前
    转 linux 底层,不如转后端
    linux 底层做多了一样没有意思——而且一个位置一个坑,机会少
    fengsien1999
        12
    fengsien1999  
       135 天前
    不建议转。能做 Android 开发已经够了。就怕你转 Linux 也玩不精
    passer9527
        13
    passer9527  
    OP
       135 天前
    @xsen 对后端提不起兴趣啊

    @xsen 底层持续的时间更长,更稳?
    xsen
        14
    xsen  
       135 天前
    @passer9527 #13 底层最大的一个工作是移植,真的没什么意思
    看一大堆代码、一大堆 datasheet ,然后改几行、几十行

    做多就会觉得没什么意思。毕竟你不是做内核,只是定制、移植内核驱动,还有就是硬件抽象层( hal )
    passer9527
        15
    passer9527  
    OP
       135 天前
    @xsen
    大佬提到的做内核是指从 0 开始吗,这种工作应该基本上没有吧?
    现在市面上的 linux 内核开发岗都是移植修补吗?
    我对底层原理和操作系统比较感兴趣,做 app 的时候也是,喜欢研究 api 背后的东西,一直往下深入。
    感觉大佬很懂,给点建议? 这碗饭好端吗
    xsen
        16
    xsen  
       134 天前
    @passer9527 #15 内核基本没从 0 开始的,从 98%开始的都没有;除非是芯片原厂,或做 Linux 操作系统(如针对云服务器的方案等诸如此类)发行版的——这样的会开发自己的内核模块(比如内核 rpc 的、虚拟网卡、虚拟磁盘等等诸如此类的)

    但绝大多数公司,都是内核定制、驱动移植,稍微好些的还会做一层 HAL (如 android 就是)给应用层调用

    若可以选择,真不建议。因为选择越来越少,面越来越窄
    xsen
        17
    xsen  
       134 天前
    @xsen @16 我认识的,包括自己基本都转行。有转后端或物联网的(比如我及之前的 tl ),有跑 RedHat 做咨询的,有转做机器人的。。。。等等

    因为国内要吃内核饭,太少;而且也就局限在一两个城市,几个头部企业
    xsen
        18
    xsen  
       134 天前
    而且国内目前部分需求底层内核的,有些技术含量的面都是极窄极专,比如 gpu 驱动或图形引擎的,或 usb 或 pci 驱动这些

    一般人想学习然后进入其中,概率可以直接忽略
    passer9527
        19
    passer9527  
    OP
       134 天前
    @xsen
    大佬现在是做什么方向的?
    芯片原厂是指 intel 、NVIDIA 、高通,发行版是指 suse ,redhat 这些吗?是不是都很难进去?
    xsen
        20
    xsen  
       134 天前
    @passer9527 #19 好的基本是一个萝卜一个坑
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2468 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 44ms · UTC 15:40 · PVG 23:40 · LAX 08:40 · JFK 11:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.