当前位置: 首页 > news >正文

关于Linux,开源社区与国产化的本质区别

因为生产力驱动而非理想主义驱动。

开源运动的蓬勃发展来自于GNU(GNU is not unix),Richard·Matthew·Stallman领导着一群黑客,带着对比尔·盖茨的鄙视,制定了GPL协议,以后人人都能从伟大的前人身上学习到源代码的精髓,让软件的获取更加自由,此后开源运动蓬勃发展,极大地推动了人类信息科技进步,这就是典型的理想主义。

世界级的创造其实都来自于天才对于理想的坚持。

我们再追溯软件的本质精神。

比尔·盖茨在1976年的公开信提出私有软件不该被盗取共享的宣言之前,软件的主流就一直以开源与共享的形式存在,因为软件在当时的环境还是实验室少数科学家,技术黑客的爱好为主,类似于原始社会的方式,软件的生产力低,仍处于个人英雄主义。

也就是说,软件对于分布在世界各地的科技工匠们,最原始本质的精神就是倾向于开放,分享,只有这样软件才能进行良好的传播,技术才有生命力,恰恰开源社区符合了这一需要。

但到了生产工具提升(面向对象语言、开发平台、组件仓库、软件操作系统......),软件进入到大规模应用的帝国时代,商业化推动了软件朝着大规模人群集中合作的方向发展,这时候生产效率就大于兴趣。软件不再是科学家或者天才黑客们的玩具,而是更多普通人的生存所需。这也是社区Linux与国产Linux在起源上有着本质的不同之处。

基于兴趣的理想主义驱动与基于商业效率的生产力驱动本身就是相互存在又相互矛盾。

若没有理想主义的大师们天才般的杰作,也不会在如此多领域开拓出创新需求。

若没有大量生产力程序员去应用开源软件,那么理想主义也无持续动力之源,更无用武之地。

就是在这样开源理想主义和商业化效率共同的促进下,我们的时代才能享受到繁星璀璨般的信息科技服务。

对于中国天然的特征就是人口规模超大,而且城市让集中开发更具有优势,因此天然上,中国在商业软件的集中开发模式输出上更具有优势,这时候我们的软件开发主流方向上很少去谈兴趣驱动,更多的是讲求生产效率。

笔者完全不认可一些舆论观点,认为中国人不适合搞技术创新,实际上恰恰相反,只不过我们集中化生产力优势太明显,人数规模庞大,掩盖了还是很多理想主义的独立创新者,更忽视了中国人有着悠久历史的知识传播与共享的传统,更加热爱各种知识创作与分享的社区(包括开源社区)。

反过来地广人稀的美国更需要通过虚拟的社区来形成有效的人员规模,形成开发协作,而社区很难通过商业化驱动,往往就是一个兴趣,燃起了更多人的热情,而兴趣又是理想主义的摇篮。

很多人还以为我们中国很少有人在开源社区内进行贡献。其实也不完全是这样子,有很多开源软件的确就是中国人开发的,例如基于NGINX的OpenResty,LVS等。

但在中国更多的开源模式还是大型公司组织后的成果,例如阿里系庞大的开源软件。只不过开源在中国并非主流,大规模组织开发才是中国的主体形态。

对于我们国产化Linux的局面,大家可以理解为一种长期投资且商业驱动的结果,这个商业模式其实就是国产化的系统性替代,类似于航空航天,本质上还是国家长期投资的一种模式,战略意义大于商业利益得失。

若单凭一国之力打造出操作系统生态,其中的生产力规模和前期投入成本,大家可想而知。

国产操作系统哪天能成长为像航空航天那样的举世瞩目,这尚不可知,但国产Linux完全与开源社区的Linux有着截然不同的本质区别,它就是国家长期战略➕商业化➕大规模组织开发的基础设施,只不过叫Linux而已。

相关文章:

关于Linux,开源社区与国产化的本质区别

因为生产力驱动而非理想主义驱动。 开源运动的蓬勃发展来自于GNU(GNU is not unix),RichardMatthewStallman领导着一群黑客,带着对比尔盖茨的鄙视,制定了GPL协议,以后人人都能从伟大的前人身上学习到源代码的精髓,让软…...

Win11下Linux子系统迁移方法及报错解决

Win11 将Linux子系统从C盘迁移到其他盘Win11下Linux子系统迁移方法及报错解决1、下载LxRunOffline2、ERROR:directory is not empty 报错解决参考链接Win11下Linux子系统迁移方法及报错解决 C盘满了,Ubuntu子系统占了100多G怎么办?直接将子系…...

python维护的一些基础方法

1】通过命令行查看python安装库的基本信息 pip show numpy # 查看python中numpy库的安装版本信息 2】python 环境的开发与维护 python的开发与C\MATLAB等最大的不同就是,python中版本的更新不对历史版本负责,就是说你以历史版本开发的python程序&#…...

C语言 数组元素的指针

1.一个变量有地址,一个数组包含若干个元素,每个数组元素都在内存中占用存储单元,它们都有相应的地址。 2.指针变量既然可以指向变量,当然也可以指向数组元素(把某一元素的地址放入一个指针变量中)。 3.所谓…...

(C语言)指针进阶

问:1. ( ),[ ],->,,--,. ,*的操作符优先级是怎么样的?2. Solve the problems:只有一个常量字符串与一个字符指针,该怎么打印常量字符串所有内容…...

DS期末复习卷(三)

选择题 某数据结构的二元组形式表示为A(D&#xff0c;R)&#xff0c;D{01&#xff0c;02&#xff0c;03&#xff0c;04&#xff0c;05&#xff0c;06&#xff0c;07&#xff0c;08&#xff0c;09}&#xff0c;R{r}&#xff0c;r{<01&#xff0c;02>&#xff0c;<01&a…...

Java链表模拟实现+LinkedList介绍

文章目录一、模拟实现单链表成员属性成员方法0&#xff0c;构造方法1&#xff0c;addFirst——头插2&#xff0c;addLast——尾插3&#xff0c;addIndex——在任意位置插入3.1&#xff0c;checkIndex——判断index合法性3.2&#xff0c;findPrevIndex——找到index-1位置的结点…...

MySQL——单表、多表查询

一、单表查询 素材&#xff1a; 表名&#xff1a;worker-- 表中字段均为中文&#xff0c;比如 部门号 工资 职工号 参加工作 等 CREATE TABLE worker ( 部门号 int(11) NOT NULL, 职工号 int(11) NOT NULL, 工作时间 date NOT NULL, 工资 float(8,2) NOT NULL, 政治面貌 varcha…...

关于表的操作 数据库(3)

目录 前期准备工作&#xff1a; 一、单表查询&#xff1a; 二、多表查询&#xff1a; 前期准备工作&#xff1a; 修改数据库的配置文件&#xff0c;&#xff0c;使其可以显示库名&#xff0c;其中//d代表当前使用的数据库名 注&#xff1a;vim /etc/my.cnf.d/mysql-server.c…...

C++:红黑树

红黑树的概念 红黑树是一棵二叉搜索树&#xff0c;但是红黑树通过增加一个存储位表示结点的颜色RED或BLACK。通过对任何一条从根到叶子的路径上各个结点着色方式的限制&#xff0c;红黑树确保没有一条路径会比其他路径长出2倍&#xff0c;因而是接近平衡的。 红黑树的性质 ⭐…...

每天一道算法题の中缀表达式

中缀表达式&#xff08;、-、*、/&#xff09; &#xff1a;中缀表达式是指操作符位于操作数之间的数学表达式。例如&#xff0c;在中缀表达式"2 3"中&#xff0c;操作符""位于操作数"2"和"3"之间。现给定一个中缀表达式&#xff0c…...

Dar语法基础-泛型

泛型 如果查看基本数组类型 List 的 API 文档&#xff0c;您会发现该类型实际上是 List<E>。 <…> 表示法将 List 标记为泛型&#xff08;或参数化&#xff09;类型——具有正式类型参数的类型。 按照惯例&#xff0c;大多数类型变量的名称都是单字母的&#xff0…...

rt-thread------串口(一)配置

系列文章目录 rt-thread 之 fal移植 rt-thread 之 生成工程模板 文章目录系列文章目录前言一、串口的配置step1&#xff1a;通过串口名字找到串口句柄step2&#xff1a;配置串口参数step3&#xff1a;设置串口接收回调函数step4&#xff1a;打开串口设备前言 UART&#xff08…...

Android - 自动系统签名

一、系统签名 以下是两类应用开发场景&#xff1a; 普通应用开发&#xff1a;使用公司自定义 keystore 进行签名&#xff0c;如&#xff1a;微信、支付宝系统应用开发&#xff1a;使用 AOSP 系统签名或厂商自定义 keystore 进行签名&#xff0c;如&#xff1a;设置、录音 系…...

SSH 服务详解 (八)-- vscode 通过 SSH 远程连接 linux 服务器

vscode 通过 SSH 远程连接 linux 服务器 SSH服务详解(一)–Linux SSH 服务器与客户端的安装与启动 SSH服务详解(二)–使用私钥登录 SSH 服务器(免密登录) SSH 服务详解 (三)-- 使用 SSH 代理 SSH 服务详解 (四)-- 本地调用远程主机的命令 SSH 服务详解 (五)-- 远程文件拷贝…...

【PTA Advanced】1060 Are They Equal(C++)

目录 题目 Input Specification: Output Specification: Sample Input 1: Sample Output 1: Sample Input 2: Sample Output 2: 思路 C 知识点UP 代码 题目 If a machine can save only 3 significant digits, the float numbers 12300 and 12358.9 are considered …...

仿真与测试:通过Signal Builder模块生成输入信号

本文研究通过Signal Builder模块生成输入信号的方法。 文章目录1 生成输入信号2 仿真过程2.1 搭建被测模型2.2 搭建Signal Builder输入模块2.3 配置仿真log及仿真3 总结1 生成输入信号 在汽车的电控软件开发中&#xff0c;经常会在Simulink模型内部进行单元测试。单元测试的本…...

云计算培训靠谱吗?

怎么算靠谱的培训呢&#xff1f; 举个例子&#xff1a; 我想参加云计算培训找个工作&#xff0c;机构满足了我的要求&#xff0c;有工作了&#xff0c;但是不是做云计算相关的。 小强也参加了云计算培训&#xff0c;想学好云计算成为技术大牛&#xff0c;最后专业学得普普通…...

力扣SQL刷题10

目录标题618. 学生地理信息报告--完全不会的新题型1097. 游戏玩法分析 V - 重难点1127. 用户购买平台--难且不会618. 学生地理信息报告–完全不会的新题型 max()函数的功效&#xff1a;&#xff08;‘jack’, null, null&#xff09;中得出‘jack’&#xff0c;&#xff08;nul…...

31 岁生日快乐,Linux!

Linux 迎来了 31 岁生日&#xff0c;所以和我一起庆祝 Linux 的 31 岁生日吧&#xff0c;喝上一杯好香槟和一个美味的蛋糕&#xff01;虽然有些人不承认 8 月 25 日是 Linux 的生日&#xff0c;但我知道。1991 年 8 月 25 日&#xff0c;21 岁的芬兰学生 Linus Benedict Torval…...

分布式ID生成方案

文章目录前言一、分布式ID需要满足的条件二、分布式ID生成方式基于UUID数据库自增数据库集群数据库号段模式redis ID生成基于雪花算法&#xff08;Snowflake&#xff09;模式百度&#xff08;uid-generator&#xff09;美团&#xff08;Leaf&#xff09;滴滴&#xff08;Tinyid…...

合宙Air103|fbd数据库| fskv - 替代fdb库|LuatOS-SOC接口|官方demo|学习(16):类redis的fbd数据库及fskv库

基础资料 基于Air103开发板&#xff1a;&#x1f697; Air103 - LuatOS 文档 上手&#xff1a;开发上手 - LuatOS 文档 探讨重点 对官方社区库接口类redis的fbd数据库及fskv库的调用及示例进行复现及分析&#xff0c;了解两库的基本原理及操作方法。 软件及工具版本 Luat…...

【论文精读】Deep Residual Learning for Image Recognition

1 Degradation Problem&#x1f4a6; 深度卷积神经网络在图像分类方面取得了一系列突破。深度网络自然地将低/中/高级特征和分类器以端到端的多层方式集成在一起&#xff0c;特征的“层次”可以通过堆叠层数(深度)来丰富。最近的研究揭示了网络深度是至关重要的&#xff0c;在具…...

Lesson2:基础语法、输出输入

一、基础语法 1、行结构 一个Python程序可分为许多逻辑行&#xff0c;一般来说&#xff1a;一个语句就是一行代码&#xff0c;不会跨越多行。 """比如下面的Python程序&#xff0c;一共有3个逻辑行&#xff0c;每一行都通过print()输出一个结果。""…...

android 9.0去掉前置摄像头闪光灯功能

1.1概述 在9.0的系统rom定制化开发中,在系统中camera2也是非常重要的一部分功能,在很多场合会用到camera2拍照视频,等等功能, 但是在使用过程中发现系统camera2在使用的时候,在前置摄像头进行拍照的时候,会出现闪光灯的情况,对于产品来说,者就是一个大问题,所以产品要求…...

静态分析工具Cppcheck在Windows上的使用

之前在https://blog.csdn.net/fengbingchun/article/details/8887843 介绍过Cppcheck&#xff0c;那时还是1.x版本&#xff0c;现在已到2.x版本&#xff0c;这里再总结下。 Cppcheck是一个用于C/C代码的静态分析工具&#xff0c;源码地址为https://github.com/danmar/cppcheck …...

用一年时间脱胎换骨

生活习惯篇早睡早起11点30之前必须睡觉按时吃饭特别是早餐控糖&#xff0c;少吃甜食早起刷牙后&#xff0c;喝一杯温水保持身材&#xff0c;养成运动健身的习惯养成持续写作的习惯记录选题&#xff0c;金句&#xff0c;素材断舍离&#xff0c;定期整理&#xff0c;把不用的东西…...

全景拼接python旗舰版

前言在这个项目中&#xff0c;您将构建一个管道&#xff0c;将几幅图像拼接成一个全景图。您还将捕获一组您自己的图像来报告最终的结果。步骤1 特征检测与描述本项目的第一步是对序列中的每幅图像分别进行特征检测。回想一下我们在这个类中介绍过的一些特征探测器&#xff1a;…...

(C语言)常见的字符串与内存操作函数

问&#xff1a;1. Solve the problems&#xff1a;我想用三种方法求字符串的长度怎么办&#xff1f;2. strlen处理的字符串中有什么时需要注意&#xff1a;什么只记为什么&#xff1f;当什么不起什么作用时&#xff0c;什么不计算在内&#xff0c;编译器会把什么&#xff0c;什…...

Linux基础笔记总结

♥️作者&#xff1a;小刘在C站 ♥️个人主页&#xff1a;小刘主页 ♥️每天分享云计算网络运维课堂笔记&#xff0c;努力不一定有收获&#xff0c;但一定会有收获加油&#xff01;一起努力&#xff0c;共赴美好人生&#xff01; ♥️夕阳下&#xff0c;是最美的绽放&#xff0…...

仿站网站开发/怎样建网站赚钱

机器学习&#xff1a;我们为什么要参数初始化为什么要初始化&#xff1f; 上图是一个神经网络的基本结构&#xff0c;深度学习的初始化参数指的是在网络训练之前&#xff0c;对各个节点的权重和偏置进行初始化的过程&#xff0c;很多时候我们以为这个初始化是无关紧要的&…...

甘肃住房建设厅的网站/2023年11月新冠高峰

win7电脑蓝屏0x0000007b的原因和解决方法如下&#xff1a;1、重启电脑&#xff0c;不停的按下F2或者DEL进入BIOS(不同品牌的电脑进入方式会不一样&#xff0c;大家可以去搜自己品牌的电脑如何进入bios)。2、进入BIOS后&#xff0c;找到的SATA Mode 或 Serial ATA Mode &#xf…...

用于制作网页的工具软件/专业关键词优化平台

问题简介 我写爬虫&#xff0c;用到了asyncio相关的事件循环&#xff0c;新建了一个线程去run_forever()&#xff0c;在docker中运行。后来程序有异常&#xff0c;主线程挂了&#xff0c;但是竟然不报错。查了很久&#xff0c;才找出来。 如果你新建一个线程去运行一般的死循环…...

百色高端网站建设/优化大师的三大功能

目录知识点总结&#xff1a; Note&#xff1a; 1.创建一个/server/scripts目录,用于存放脚本&#xff08;命令&#xff1a;mkdir -p /server/scripts&#xff09; 2.安装软件时&#xff0c;安装路径统一为/usr/local/软件名-版本号 3.安装完软件后&#xff0c;需做软链接&#…...

网站建设原创文章 关键词/广州市网络seo外包

rpm 包安装过程中依赖问题“libc.so.6 is needed by XXX”解决方法&#xff08;Liunx安装mysql报错&#xff09; 原因&#xff1a;安装了64位的Linux 我安装的是 centOS 6.5 64位 64位的linux 对于 默认只安装主架构所需要的包 不会安装其他多余的包&#xff0c; 报错信息&…...

网站建设需要什么硬件和软件有哪些方面/免费培训seo网站

Jenkins 用户文档 Jenkins是什么&#xff1f; Jenkins是一个独立的开源自动化服务器&#xff0c;可用于自动执行与构建、测试、交付或部署软件相关的各种任务。 Jenkins可以通过原生系统软件包、Docker安装&#xff0c;甚至可以由安装了Java Runtime Environment&#xff08;JR…...