Linus Torvalds谈CPU可靠性(2007年)

Linux内核邮件列表中的一封邮件这样写道(时间为2007年):

目前的CPU并非为长久运行而设计。当我们设计超过需要工作50年的硬件系统时,就要为此而担心了。

在回复这封邮件时,Linus Torvalds说:CPU制造商似乎不愿意谈论硬件的耐用性,例如Intel网站上就没有CPU的MTBF数据,如果用户想了解这些信息,需要自己向支持人员了解。不见得是这些数据不好,只因为人们通常忽视这方面的信息,硬件制造商也不愿意人们关注这些数据。

Linus说,CPU通常没有发挥其性能极限,而是以相对较低的频率运行,其中重要的一项原因就是MTBF——高温工作产生的原子迁移会损坏CPU。他认为桌面CPU的寿命通常只有5年(还要加上平时关机休息的时间),服务器CPU要长得多。不单CPU,所有的硬件都有MTBF,Linus希望硬件能变得更耐用一些。

对使用大量计算机系统的企业用户来说,硬件失效并不少见,Hacker News上有不少用户印证了这样的结论。

近来Apple Support论坛上也有大量用户(例如其中一个帖子已有上百页)反映它们笔记本电脑经过两三年使用,GPU开始出现故障。但由于已超过保修期,更换硬件需要支付高昂的费用。

Allegro模块复用:从原理图到PCB的完整流程与关键细节 本文详细介绍了Allegro模块复用从原理图到PCB的完整流程与关键细节,包括DSN和MDD文件的创建、模块调用的实战技巧以及双向同步与版本控制方法。通过标准化处理和高级复用技巧,能显著提升PCB设计效率,减少重复工作时间。适用于智能硬件和工业控制等领域的工程师。 阅读详情

相关推荐

GEO数据库数据下载方法总结

#GEO数据下载 GEO是生信分析经常用到的数据库。经常需要从中获取表达矩阵,平台信息,meta信息等,本博文总结了几种下载GEO数据的方法,各有优劣,实际应用过程中自行选择适合自己的。 ##方法一:直接从浏览器中下载 以数据集GSE1001为例, 可以直接点击“Series Matrix Files”获取该样本txt格式的表达谱数据,一般我们认为这种处理过的表达谱数据是没有问题的,当然,具体情况具体分析。 打开下载的文件可以看到许多“#”开头的行,这些是注释信息,一般关注这些注释信息中的“data pr

sakoko_的博客 4万+

计算机组成核心:从CPU指令到系统可靠性的深度解析

本文深入解析计算机系统的四大核心硬件基础:CPU执行指令、指令系统特点、存储层次结构和系统可靠性。CPU由运算器和控制器组成,通过"取指-译码-执行"循环工作。指令系统分为CISC和RISC两种设计哲学,各有优劣。存储系统采用层次化设计,通过Cache利用局部性原理提高访问效率。系统可靠性计算基于概率论,通过串联、并联等模型评估,并可采用冗余技术提高可靠性。这四部分共同构成了计算机系统的硬件基础架构。

IT913913的博客 1877

32位ALU设计(verilog实现)

32位ALU设计 ​ 算术逻辑单元(arithmetic and logic unit) 是能实现多组算术运算和逻辑运算的组合逻辑电路,简称ALU。算术逻辑单元是中央处理器(CPU)的执行单元,是所有中央处理器的核心组成部分,由"And Gate"(与门) 和"Or Gate"(或门)构成的算术逻辑单元,主要功能是进行二位元的算术运算,如加减乘(不包括整数除法)。基本上,在所有现代CPU体系结构中,二进制都以补码的形式来表示。 设计思路 设计实现 仿真测试 文章目录32位ALU设计一、设计

Destiny的博客 4万+

Linus Torvalds:硬件变化改变了Linux开发

在Linux版本4.19中,Linux的开发人员必须处理硬件安全错误,这个问题特别令人沮丧,因为它是别人的错误。 但是Linux的创造者Linus Torvalds希望这种事件在将来会越来越少见。 在Linux开发过程中,有一个为期两周的新代码合并窗口,然后开发人员会花六到七周的时间来查找错误。 通常,这个过程没什么大不了的,托瓦尔兹说。 大多数情况下,在第二周中旬,便会修复错误。 [...

cxu0262的博客 181

V-REP(Cooprliesim EDU)自学笔记 实现UR5机械臂末端按轨迹移动

V-REP(Cooprliesim EDU)自学笔记 实现UR5机械臂末端按轨迹移动

xu_white的博客 7583

Tessent ATPG进阶:解锁多种Fault Model的工程实践与选型指南

本文深入探讨Tessent ATPG中多种Fault Model的工程实践与选型策略,涵盖Stuck-at、Transition、Bridge等核心模型的应用场景与配置技巧。通过实际案例解析,展示如何组合不同Fault Model提升芯片测试覆盖率,特别针对汽车电子、超低功耗芯片等复杂场景提供专业解决方案。

weixin_30219613的博客 198

Linus Torvalds 谈居家办公:不要在家中重新搞一个办公室

点击上方蓝色“程序猿DD”,选择“设为星标”回复“资源”获取独家整理的学习资料!来源 |https://www.oschina.net/news/11...

程序猿DD 1026

MaxScript批量修改材质、贴图名称

MaxScript批量修改材质、贴图名称1 实现效果1.1 修改前材质、贴图名称1.2 修改后2 代码 1 实现效果 1.1 修改前材质、贴图名称 1.2 修改后 2 代码 prefixName = "prefiname" maxFile = "maxfilepath" makeDir "newBitmappath" mapsPath = newbitmappath + "\\" fn formatStr index = ( str = index as string newS

郑德帅 3240

林纳斯·托瓦兹(Linus Torvalds)为什么被称作大神?

神创造了一个机制,然后大家在这个机制中自我发展。在西洋神话中,上帝创造了光,创造了亚当跟夏娃,而他们繁衍了所有的人,这个世界的基础是神制定的,人只是按照这个基本框架自行发展。在中国神话中,女娲是神,创造了很多人,然后人类自行发展繁衍。即便这个世界的发展本身看起来是人类自身的功劳,但,这个世界却是神创造的。所以,神的核心是:创造。Linus 为什么是神?因为它创造了「优秀的开源软件吸引更多人对开源进

习惯成自然 1万+

YOLOv8改进策略【损失函数篇】| 2024 引进Focaler-IoU损失函数 加强边界框回归 (Focaler-DIoU、Focaler-GIoU、Focaler-CIoU)

本文记录的是改进YOLOv8的损失函数,将其替换成。现有研究通过利用边界框之间的几何关系来提高回归性能,但忽略了困难样本和简单样本分布对边界框回归的影响。不同检测任务中困难样本和简单样本的分布不同,对于简单样本占主导的检测任务,关注简单样本的边界框回归有助于提高检测性能;对于困难样本比例较高的检测任务,需要关注困难样本的边界框回归。,提高检测器在不同检测任务中的性能。实现的。

Limiiiing的博客 1221

Android框架WiFi架构

动平台,它主要是用来支持WEP,WPA/WPA2和WAPI无线协议和加密认证的,而实际上工作内容是通过socket(不管是wpa_supplicant与上层还是wpa_spplicant与驱动都采用socket通讯)与驱动交互上报数据给用户,而用户可以通过socket发送命令给wpa_supplicant调试来对wifi芯片操作,简单的说,二、android wifi 系统架构:andtoid wifi 系统引入了wpa_supplicant,它的整个wifi系统。

手机-手表蓝牙开发工程师的博客 3459

深入理解Python中的面向对象

博客核心内容: 面向过程与面向对象的对比 id、type和value的讲解 类和对象的概念 初始化构造函数__init__的作用 self关键字的使用 继承的概念 组合的概念 接口的概念 抽象类的概念 1、面向过程与面向对象的对比面向过程的程序设计的核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西。 优点是:极大的降低了程序的

什么最重要?算法!! 2万+

【Burp入门第三十三篇】BurpSuite+Proxifier安装配置,实现微信小程序抓包

本文介绍Burp+Proxifier安装配置,实现微信小程序抓包

等风来 5873

Linus Torvalds 回应,Debian 项目曾讨论永久禁止他出席会议!

整理 | 郑丽媛 头图 | 优快云下载自东方IC 不久前Linux刚度过了它的29岁生日,这29年来,Linux系统一直在不断完善,如今因其稳定的系统性能、免费开源、模块化程度高、可移植性强、技术社区用户多等优点,深受开发者们的喜爱。 而Linux的最初版本就诞生在一个21岁的大学生手中——Linus Torvalds,他坚持将Linux开源,用户可以通过网络或其他途径免费获得,并可以任意修改其源代码。这是当时其他的操作系统所做不到的。这些年Linus Torvalds一直陪伴着Linux发展完善,..

优快云资讯 4万+

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

Linus Torvalds的最新电脑配置

大家好,祝大家6.1节日快乐最近Linus Torvalds 公布了他的电脑配置,有了这个配置清单之后,每个人都可以拥有一台和Linux之父一样的电脑,当你拥有了一台之后,你可以发个朋友...

嵌入式Linux 6359

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

2020 年 Linus 有哪些引起“轰动”的时刻

Linus Torvalds 在开发者圈子里的一举一动,每每让人肾上腺飙升。我们在这里罗列了整个 2020 年 Linus 引起“轰动”的一些时刻,回顾了一年来与 Linus Torvalds 相关的事件。(这要说标题党那也没办法[摊手]) 一 Talk is Cheap 新年伊始,Linus 就彬彬有礼地回应了开发者对 Linux 调度器存在问题的批评。 这里问题是什么大概已经不重要了,人们更关注的是在交流的过程中,变得慈祥的 Linus 虽然不同意文章的观点,但他的言语也不再那么激烈。通篇看下来,“P

m0_46163918的博客 5284

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

Linus现身亲手组装“理想Linux PC”,谈Linux未来:若有人更适合,我愿退位!

本次大会共设立现代 C++ 最佳实践、架构与设计演化、软件质量建设、安全与可靠、研发效能、大模型驱动的软件开发、AI 算力与优化、异构计算、高性能与低时延、并发与并行、系统级软件、嵌入式系统十二大主题,共同构建了一个全面而立体的知识体系,确保每一位参会者——无论是语言爱好者、系统架构师、性能优化工程师,还是技术管理者——都能在这里找到自己的坐标,收获深刻的洞见与启发。一旦我找到了我觉得可以接手的人,我就把它“扔过栅栏”,说“你来吧”。只要有足够的用户,让我的工作有价值,而不是精神自慰,我就满足了。

优快云资讯 3397

Linux 是一种免费、开源、基于 Unix 的多用户操作系统,由 Linus Torvalds 于 1991 年首次发布

Linux 有上百种发行版,包括社区驱动的 Debian、Arch Linux 和商业支持的 Red Hat Enterprise Linux、SUSE 等‌。Linux 内核版本采用“A.B.C”格式,其中 A 表示主版本号,B 表示次版本号,C 表示较小的更新。Linux 内核版本采用“A.B.C”格式,其中 A 表示主版本号,B 表示次版本号,C 表示较小的更新。Linux 提供了丰富的开发工具和编程环境,支持多种编程语言(如 Python、C/C++),是开发者的理想平台‌。

[Blog][Domain] programb.blog.youkuaiyun.com 1753

Linus Torvalds谈ECC内存的重要性 痛斥英特尔正在扼杀它

新年假期,Linus Torvalds在邮件列表中发表的一篇火热的帖子引发技术社区关注,人们借此讨论ECC内存的重要性,Torvalds在文章中抨击了英特尔在这方面的”坏政策”,因为特定...

嵌入式Linux 687

Linus Torvalds 坚决拒绝支持大端 RISC-V

因此,当小端系统需要读取或修改网络数据包时,它必须将大端值转换为小端值,然后再转换回来——在没有 Zbb 扩展的 RISC-V 平台上,这个过程可能需要多达 10 到 20 条指令。还是这只是又一个“RISC-V 用于学术设计课程,人们出于学术原因想研究字节序”的故事?差不多,但还不够接近。如果事实证明 RISC-V BE 成为现实,并且确实在 RISC-V 生态系统中找到一席之地,那么我们。RISC-V 架构本身就够复杂了,有数百万个愚蠢的配置问题。换句话说,这假设 RISC-V 将添加大端模式,因为。

2501_93209230的博客 487

Linus Torvalds与Andrew S. Tanenbaum的论战!

因为要玩LINUX,不可能不知道LINUS ,因为要学操作系统,不可能不知道Andrew S. Tanenbaum,(WZG叫着去吃饭了,回头继续写)接着:在Andrew S. Tanenbaum的>一书的引论中有这么一句话:“对UNIX版本的免费产品(不同于教育目的)的渴望导致芬兰学生Linus Torvalds编写了LINUX,这个系统在MINIX上开发,而且原本支持各种MII

Alex的学习之路 7945

程序员电脑组装_Linus Torvalds的最新电脑配置

大家好,祝大家6.1节日快乐最近Linus Torvalds 公布了他的电脑配置,有了这个配置清单之后,每个人都可以拥有一台和Linux之父一样的电脑,当你拥有了一台之后,你可以发个朋友圈,「我今天用Linus 的电脑解了一个bug」。不过,话说回来,这台电脑组装完成后价格不菲,总价在 3500 美刀,折合成人民币是24938.55RMB。Linus对这次换电脑的一些话Linus 说,我...

weixin_39993301的博客 681

Linux 内核是由 Linus Torvalds 于 1991 年开发的操作系统内核,最初是为了在个人计算机上运行 Unix 系统而设计

Linux 内核版本采用“A.B.C”格式,其中 A 表示主版本号,B 表示次版本号,C 表示较小的更新。Linux 性能优化需要从硬件、操作系统和应用程序三个层面入手,结合内核参数调整、资源管理和性能监控工具,全面提升系统的稳定性和响应速度‌。调整 vm.swappiness 参数,减少对交换空间的使用,默认值为 60,建议在内存充足时设置为 10 或更低‌。《Linux 内核深度解析》‌:基于 4.x 版本,详细讲解内核引导、进程管理、内存管理等关键技术‌。

[Blog][Domain] programb.blog.youkuaiyun.com 1518

微传记【3】——Linux之父 Linus Torvalds(林纳斯·托瓦兹)

基本信息发明Linux之前(1969–1991)1991年:Linux诞生的关键几个月起飞阶段(1992–1996)职业生涯转折性格与争议生活与现状(2025年12月)一句话总结 一个芬兰大学生因为“看不惯学校Unix太贵、Minix太慢”,在宿舍里用半年业余时间写出来的“玩具”,在35年后的今天,运行着:而他本人至今还在波特兰的家里,每天早上10点起床,喝着可乐,亲手决定每一行进入Linux内核的代码。

腾TO的技术博客 1065

linux之父博客,Linux25周年之际:专访 Linux 之父 Linus Torvalds

1991 年,22 岁的 Linus Torvalds 一边在芬兰赫尔辛基大学学习计算机,一边设计了 Linux 的系统内核。之后,Linux迅速发展为一个可以在智能手机、服务器等各种平台上运行的功能全面的开源操作系统。在 Linux 系统诞生 25 周年之际,Linux 之父 LinusTorvalds 在采访中回忆了这四分之一个世纪以来他和 Linux 的故事。记者:现在你比二十五年前要有更丰...

weixin_31234809的博客 431

怼你没商量!Linus Torvalds 删除 AWS 工程师提交的补丁,表示这是愚蠢的行为,网友:我的快乐又回来了...

Python实战社群Java实战社群长按识别下方二维码,按需求添加扫码关注添加客服进Python社群▲扫码关注添加客服进Java社群▲作者| 刘琳来源丨雷锋网https://mp.we...

<sdffdsfsdfdfs>sfsfsfsdfsdffds</sdfsDS>Fsd 232
上一篇: Hawala:基于信任的现实货币交易系统
下一篇: 我在App Store三年學到的13件事
923940cub
博客等级 码龄17年 121粉丝 37原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值