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

Linux 4.17 RC1 首次减少代码量

  •  
  •   biocom · 2018-04-17 07:45:40 +08:00 via Android · 4820 次点击
    这是一个创建于 2412 天前的主题,其中的信息可能已经有所发展或是发生改变。
    一直以来,软件产品更新迭代的“潜台词”都是加功能,代码膨胀,导致越来越臃肿。很多大型软件都已经 g 级起步,Linux 4.17 RC1 第一次代码量比上个版本减少,本来很多产品都可以做一个小核心,大插件的模式,不用一开始就让用户下几个 g,网络带宽已经足够,1g 以内的包都可以按需使用了,一些行业软件也是直奔 10g 起步
    17 条回复    2018-04-18 05:39:40 +08:00
    msdx123
        1
    msdx123  
       2018-04-17 07:58:14 +08:00   ❤️ 1
    https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/diff/?id=v4.17-rc1&id2=v4.16&dt=2
    这次把 metag,blackfin 之类的架构支持都移除了,代码量自然少了很多
    webjin1
        2
    webjin1  
       2018-04-17 08:04:53 +08:00 via Android
    widewing
        3
    widewing  
       2018-04-17 08:22:55 +08:00 via Android
    Linux 大部分的代码都是各种奇怪的驱动吧
    ericgui
        4
    ericgui  
       2018-04-17 08:53:28 +08:00
    @widewing 是,都必须和内核一起编译。如果能类似微软这种,驱动随时新增安装,就好了。
    goreliu
        5
    goreliu  
       2018-04-17 09:04:52 +08:00 via Android
    @ericgui 驱动可以单独编译安装(.ko 内核模块),还可以运行时加载和移除,只是常用的驱动都被整合到内核代码里了,这样就不需要到处去找驱动了。
    biocom
        6
    biocom  
    OP
       2018-04-17 09:16:08 +08:00 via Android
    @ericgui
    @goreliu

    最好是内核只要负责硬件签名和认证,然后驱动异步安装(现在 win10 很多驱动都是这个策略),这样操作系统就从 software 开始往 service 演变了。
    jerry033
        7
    jerry033  
       2018-04-17 09:25:16 +08:00
    Linux 从安装到联网中间隔着若干麻烦问题,驱动异步安装可能不是最好的方法,整合关键驱动还是必要的
    willm
        8
    willm  
       2018-04-17 09:53:14 +08:00
    Linux 是宏内核,应该做不到 Win10 那么方便
    mengzhuo
        9
    mengzhuo  
       2018-04-17 10:11:13 +08:00
    最爽的估计是 Linus 本人,咔咔咔,终于不用看这些老古董了~
    iwtbauh
        10
    iwtbauh  
       2018-04-17 10:50:49 +08:00 via Android
    @biocom 没有必要,如今内核的驱动,PC 机上主要需要用的编译完一共才 200 MB 左右,旧内核更小,这点空间对于现代的硬件而言不算什么,直接包含在发行版里就好。没必要搞各种幺蛾子,反而增大维护成本。

    @ericgui 微软 Windows 的驱动也需要和内核一起编译的,不信自己去下载个 wddk ( windows 驱动开发 sdk )解包看看,里面是各个 NT 内核的 lib 和头文件,并附带了一个 MSVC 编译器,驱动需要对应特定 NT 内核版本编译。Linux 的驱动也可以通过一组“内核头文件”编译,而不需要依赖完整的内核源码树(如 Debian 系上的 linux-headers-...包)
    jyf
        11
    jyf  
       2018-04-17 11:00:13 +08:00
    @iwtbauh 问题倒是不在于空间占用 而是各种乱七八糟的配置充斥着内核配置菜单里 如果可以把这些都剥离出内核源码就好了 现在内核配置都有一本老厚的教程 这个实在太荒谬了
    tempdban
        12
    tempdban  
       2018-04-17 11:19:07 +08:00 via Android
    @jyf 兄弟你真当内核是普通的应用软件啊…,提供了一个 menuconfig 不用手敲已经不错了,还有生成好的模板直接用,我从头配置内核也没觉得麻烦过 。
    XIVN1987
        13
    XIVN1987  
       2018-04-17 11:29:45 +08:00
    @msdx123

    '''
    My apologize for this ...

    At this point ADI are not able to commit to maintaining the Blackfin port in the Linux Kernel. As such we propose that we remove the port from the active mainline so that it does not interfere with other kernel development.
    '''


    好像是说因为 ADI 自己不维护 Blackfin 的 Linux port,,所以就干掉了!!
    warcraft1236
        14
    warcraft1236  
       2018-04-17 12:48:35 +08:00
    驱动也是分内核态和用户态的
    widewing
        15
    widewing  
       2018-04-17 14:34:14 +08:00 via Android
    我是搞不明白 Linux 的代码组织,非要搞在一个 repo 里吗,像 android 这样不同模块放不同 repo 不好吗?每次同步源码都觉得心累,就像我只想买个西瓜结果非要我买下整个菜市场
    iwtbauh
        16
    iwtbauh  
       2018-04-17 14:42:25 +08:00 via Android
    @widewing 内核组件和和内核紧密相关的程序就是分 repo 放的啊。
    另外 Linux 源码和 Android 源码根本就不是一个数量级的,没有比较的意义。前者只是一个内核,后者是一个系统发行版
    又是把 GNU/Linux 读作 Linux 惹得祸
    应该让 Android 和 GNU/Linux 比较啊,比如 Android 和 Debian,Debian 的源码可不是在一个 repo 里啊
    ericgui
        17
    ericgui  
       2018-04-18 05:39:40 +08:00
    @widewing 一个 kernel 才 80 多 M
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2136 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 16:13 · PVG 00:13 · LAX 08:13 · JFK 11:13
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.