LWN:5.10合并窗口的后半部分!

MPN – 制造商物料编号(延伸) 此外,用户还可以在物料主数据中定义阻止MPN材料的原因,以及在采购订单创建时,是否可以将现有的MPN材料修改为其他MPN材料,从而实现对MPN材料的精细控制和管理。通过使用AMPL,用户可以指定每个MPN材料是否仅能为特定工厂或整个企业所有工厂采购、采购的时间段、是否必须属于特定修订级别、是否只能从特定制造商工厂采购以及是否被阻止及其原因。通过AMPL管理,企业可以规范采购流程,避免使用未经批准的材料,从而提高采购的透明度和效率,同时也为质量控制提供了保障‌。3、QM中的制造商物料。质量信息记录QI01。 阅读详情

关注了就能看到更多这么棒的文章哦~

The rest of the 5.10 merge window

By Jonathan Corbet
October 26, 2020
https://lwn.net/Articles/834504/

Linus Torvalds 在 10 月 25 日的时候发布了 5.10-rc1,关闭了 5.10 周期的合并窗口。当时,已经有 13,903 个 changeset 合入了 mainline。其中有超过 6,700 个是在 LWN 的上半场总结之后合入的,其中包含了许多有意思的功能。请继续阅读来了解 5.10 中的新功能。

Architecture-specific

  • s390 架构一直没有支持好 leap second(闰秒),每当出现 lead second 情况时,都需要重启系统,才能让时间正确对应上。这个行为不是很好。在 5.10 版本中,s390 系统将可以在运行时动态调整 lead second 了。参见https://git.kernel.org/linus/b2539aa0d7ff

  • MIPS 架构支持启动 zstd 算法压缩过的 kernel 了。

  • RISC-V 架构支持在带有 EFI firmware 的系统上启动了。

Core kernel

  • 部分类型的 BPF program 现在执行过程中可以 sleep 了。这个功能目前只限于 tracing 和 security-module program。

  • 在 bpf()中新增了 BPF_PROG_BIND_MAP 命令,用来给加载好的 program 来绑定 map。目的是方便存储相关 program 不使用的 metadata。

  • BPF program 现在可以利用 bpf_per_cpu_ptr()和 bpf_this_cpu_ptr()这两个帮助函数来访问 per-CPU 变量。

  • 新增 process_madvise()系统调用。这样一个进程就可以代替另一个进程来执行 madvise()功能了。process_madvise()在今年一月份的 LWN 文章中介绍过,不过 API 已经改变了。请参看 https://git.kernel.org/linus/ecb8ac8b1f14

Filesystems and block I/O

  • overlay 文件系统新增了一个"volatile" mode,用来让它忽略各种 fsync()的调用。这个模式很危险,不过对于在进行 image 编译等场景是非常有帮助的。这些场景里面哪怕系统突然死机了,也完全可以重新来过,不担丢失数据。参见 https://git.kernel.org/linus/c86243b090bc

  • zonefs 文件系统新增了 explicit-open mount 参数。使用了这个参数的话,打开文件做写入操作的话,会让设备上相关的 zone 变到 active 状态。这样就确保成功打开的 zone 后续可以成功地写入。参见 https://git.kernel.org/linus/48bfd5c6fac1

  • XFS V4 文件系统格式标记为 deprecated 状态。用户应该要升级到功能更强大的 V5 格式。V4 至少会支持到 2030 年,用户有足够的时间来做这个改动。

  • ext4 文件系统新增了一个 "fast commits" 模式,可以大大减少许多文件操作的 latency。性能提升很大,参见 https://lwn.net/ml/linux-ext4/20201015203802.3597742-1-harshadshirwadkar@gmail.com/ 这里贴出来的 benchmark 结果,以及针对 fast commit 功能的讨论。

  • 新增了 nosymfollow 这个 mount 参数,在解析此文件系统中路径的时候不会根据符号链接来跳转。不过应用程序还是可以使用 readlink()调用来自己 follow 符号链接的。

Hardware support

  • Clock: Micro Crystal RV3032 realtime clocks, R-Car V3U clocks, Allwinner A100 clock control units, MediaTek MT8167 clock controllers, and Qualcomm SM8150 and SM8250 display clock controllers.

  • Miscellaneous: Vivaldi keyboards, Renesas RPC-IF HyperBus controllers, Ricoh RN5T618 charger/fuel gauges, TI BQ25980 battery chargers, Mellanox BlueField I2C controllers, joysticks connected via analog-to-digital converters, Zinitix touchscreens, Toshiba Visconti watchdog timers, and TI R5F remote processor subsystems.

  • Networking: MediaTek MT7531 Ethernet switches, Marvell Prestera switches, and Microchip MCP25xxFD SPI CAN controllers.

Networking

  • 现在可以通过加载一个 BPF program,在 network packet 经过本系统的时候改动 TCP header option 了。参见https://git.kernel.org/linus/0813a841566f

  • 继续在合入 multipath TCP 功能。5.10 将可以在多个数据流上同时传输数据了。

  • 支持了 IGMPv3/MLDv2 多播协议(RFC 4604)

  • 支持了 ISO 15765-2:2016 CAN 传输层协议。

Security-related

  • SafeSetID security module 也可以控制 group-ID 的改动了。

Virtualization and containers

  • KVM hypervisor 现在可以延后让后续的 user-space 进程来处理对未知(unknown)的 model-specific registers(MSRs)的访问了。这里有更多信息https://git.kernel.org/linus/1ae099540e8c, 还有这里提供了一个过滤机制来对 MSR 处理有更多控制 https://git.kernel.org/linus/1a155254ff93。

Internal kernel changes

  • continuous memory allocator (CMA) 现在可以选择也考虑 NUMA 了。使用这个功能的话需要预先设置 DMA_PERNUMA_CMA 并且启动时要带有 cma_pernuma= 这个命令行参数来指定 per-NUMA 空间的 size。DMA mapping layer 也经过了改动,可以支持这个功能。

  • 新增了一个 API 来分配 non-coherent DMA 区域,参见 https://git.kernel.org/linus/0d71675f87dc 。还有一个新的函数(dma_direct_alloc_pages())用来从 page allocator 来直接获取可以用于 DMA 的 memory。

  • 根据 8 月份的讨论(https://lwn.net/Articles/828705/) ,改动了 prando_u32(),从而来解决一些理论上可能存在的安全问题。新的代码使用了 SipHash 哈希算法的一个变种来生成伪随机数,并且添加了一些内部的随机熵来源。

现在,是时候来解决这些代码中的 bug 了。这个工作会持续 7~8 周,最终大概在 12 月 13 日或者 20 日发布最终的 5.10 版本。作为 2020 年的最后一次发布,5.10 可能会成为下一个长期支持版本(long-term-support)的 kernel。所以实际上在 12 月份发布时,5.10 的工作,才刚刚开始。

全文完
LWN 文章遵循 CC BY-SA 4.0 许可协议。

欢迎分享、转载及基于现有协议再创作~

长按下面二维码关注,关注 LWN 深度文章以及开源社区的各种新近言论~

MIKE水动力笔记4_制作网格 建立水动力模型前的重要一步就是制作网格,本文所讲内容就是如何在MIKE中制作网格。 阅读详情

相关推荐

F5 GTM DNS 实战指南:智能DNS的监控与健康检查机制

本文深入解析F5 BIG-IP GTM智能DNS的核心机制,重点阐述其监控与探针两大功能如何协同工作。监控器负责深度检查服务器应用健康,确保服务可用性;探针则实时测量网络路径质量,实现基于延迟的智能流量调度。文章通过实战配置步骤,指导如何构建逻辑架构、建立iQuery通信、配置业务级健康检查及探针,从而构建高可用、高性能的全局负载均衡解决方案。

weixin_29240711的博客 468

杂谈 linux DMA内存

这块物理块会记录在 cma_areas[cma_area_count] 中,然后 dma_contiguous_default_area 指向这块物理块。不同的mask,对应从不同的zone获取内存。2 dma_contiguous_default_area 没货了,则优先从dma zone获取page。最后将64为的物理地址对应到32位的dma地址,phys_attr_t转化位dma_attr_t。注意了,开始找的地方是从dma的边界往下(arm64_dma_phys_limit)。

m0_37797953的博客 1363

STM32F103C8T6 + GY-906红外测温:手把手教你用CubeMX和HAL库搞定IIC驱动(附完整工程)

本文详细介绍了如何使用STM32F103C8T6和GY-906红外测温传感器(基于MLX90614芯片)实现非接触式温度测量。从STM32CubeMX工程创建、HAL库驱动适配到温度数据采集与处理,提供完整的开发流程和常见问题解决方案,帮助开发者快速掌握红外测温技术。

weixin_29188043的博客 253

LWN:PID的复仇!以及process_madvise(), pidfd capabilities

关注了就能看到更多这么棒的文章哦~process_madvise(), pidfd capabilities, and the revenge of the PIDsByJonath...

Linux News搬运工 2116

AAC编解码器在实时通信中的性能对比与应用选择

本文深入分析了AAC编解码器在实时通信中的性能优化,重点对比了faac、faad2与fdk-aac三大开源方案在WebRTC场景下的表现。通过实测数据揭示其在延迟、音质和资源消耗等关键指标的差异,并提供场景化选型建议与调优技巧,帮助开发者提升实时音视频通信质量。

weixin_29210727的博客 388

模型剪枝实战 | Torch-Pruning 库在YOLOv8上的应用指南

本文详细介绍了如何使用Torch-Pruning库对YOLOv8模型进行结构化剪枝,以实现模型“瘦身”。通过DepGraph(依赖图)技术自动处理层间依赖,确保剪枝安全。文章提供了从环境搭建、核心原理理解到完整剪枝流程的实战指南,并强调了剪枝后的微调与性能评估,帮助开发者在保持精度的同时显著提升模型推理速度。

weixin_29046035的博客 503

两种类型的DMA mapping:一致性DMA映射&流式DMA映射 (5.10)

一致性DMA:在驱动初始化时mapping,在驱动shutdown时unmapping**(意味着不是一次性的,是持续性的使用该DMA映射)**。硬件需要保证外设和CPU能并行访问同一块数据,并且保证在软件无显式flush操作的情况下,CPU和外设能同步看到对方对数据的更新。一致性(consistent)可以理解为同步(synchronous)。 api:dma_alloc_coherent 直接从dma区域申请内存。 流式DMA:一般是需要一次DMA transfer时map,传输结束后unm

gjioui123的博客 3652

基于YOLO26的实时目标追踪实战:从训练到视频追踪(附完整可视化代码)

核心组合:YOLO26(高精度检测)+ ByteTrack(稳定追踪)是实时目标追踪的最优工业组合,Ultralytics内置集成无需额外开发;训练优化:追踪场景需优先提升检测框精度(增加box损失权重),保证ID稳定性;可视化核心:为每个ID分配唯一颜色、绘制运动轨迹、显示FPS,是落地场景的必备功能;性能调优:轻量化模型+降分辨率+OpenVINO导出,可在边缘设备(如研华工控机)实现实时追踪。这套代码可直接复用到智慧园区、停车场、工业产线等场景,仅需修改park.yaml中的类别和。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 571

linux内存调节之CMA

概述 CMA(Contiguous Memory Allocator)是连续内存分配技术,是 Linux Kernel 内存管理系统的扩展,目的在于解决视频播放 (特别对于 4K 视频) 等需要预留大量连续内存导致运行内存紧张的问题。 CMA 框架的主要作用不是分配内存,而是解析和管理内存配置,以及作为在设备驱动程序和可插拔的分配器之间的中间组件。 数据结构 1 . struct cma 结构用于维护一块 CMA 区域 struct cma { unsigned long bas...

m0_37797953的博客 4065

Android 13 内置xapk安装包的方法

安装xapk 内置xapk

安卓兼职framework和app工程师的博客 222

【YOLOv8系列】YOLOv8的webUI界面设计;通过Streamlit实现YOLOv8的可视化交互界面设计

但是我为了避免重复性的工作,且为了避免重复安装之前(安装pytorch和yolov8时)已经安装好的库,因此写了一个python脚本进行安装;需要提前在有网络连接的电脑上下载所有必要的依赖项,然后将这些文件传输到离线的机器上进行安装。脚本将自动跳过已安装的包,并安装其余的 .whl 文件。在离线的机器上,切换到包含下载好的文件的目录。证明我们的streamlit安装成功了。证明你的streamlit安装成功了。第一步:在有网络连接的电脑上下载。第二步:将下载的文件传输到离线机器。文件)传输到离线的机器上。

AnChenliang_1002的博客 1566

Linux kernel 命令行参数一

The kernel’s command-line parameters The following is a consolidated list of the kernel parameters as implemented by the __setup(), early_param(), core_param() and module_param() macros and sorted into English Dictionary order (defined as ignoring all pun

哦,原来你也在这里。 7158

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

LWN:6.10合并窗口的后半部分!

关注了就能看到更多这么棒的文章哦~The rest of the 6.10 merge windowBy Jonathan CorbetMay 27, 2024Gemini-1.5-flash translationhttps://lwn.net/Articles/974869/Linus Torvalds发布了 6.10-rc1并在 5 月 26 日关闭了 6.10 合并窗口。当时,已经有 ...

Linux News搬运工 550

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

深度学习工具包 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")

LWN:6.11合并窗口的剩余部分!

关注了就能看到更多这么棒的文章哦~The rest of the 6.11 merge windowBy Jonathan CorbetJuly 29, 2024Gemini-1.5-flash translationhttps://lwn.net/Articles/982605/6.11-rc1版本的发布标志着 6.11 合并窗口于 7 月 28 日结束。当时有 12,102 个非合并变更集(...

Linux News搬运工 2366

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

LWN:5.15 合并周期后半部分!

关注了就能看到更多这么棒的文章哦~The rest of the 5.15 merge windowBy Jonathan CorbetSeptember 13, 2021DeepL as...

Linux News搬运工 448

LWN:7.0 合并窗口的后半部分

Qualcomm Kaanapali 时钟控制器、Qualcomm SM8750 摄像头时钟控制器、Qualcomm MSM8940 和 SDM439 全局时钟控制器、Google GS101 DPU 时钟控制器、SpacemiT K3 时钟控制器、Amlogic t7 时钟控制器、Aspeed AST2700 时钟控制器,以及 Loongson-2K0300 实时时钟。现在可用于 设置期望的超时时间,内核在发生软锁定(soft lockup)后,将按此时间(以 20 秒为倍数)触发恐慌(panic)。

Linux News搬运工 191

LWN: Linux 5.6合并窗口进展——后半部分!

关注了就能看到更多这么棒的文章哦~The rest of the 5.6 merge windowByJonathan CorbetFebruary 10, 2020原文来自:http...

Linux News搬运工 478

LWN:5.16 合并窗口,第二部分!

关注了就能看到更多这么棒的文章哦~5.16 Merge window, part 2By Jonathan CorbetNovember 15, 2021DeepL assisted tr...

Linux News搬运工 457

LWN:内核5.4版本合并窗口——第二部分

点击上方蓝色“Linux News搬运工”关注我们~5.4 Merge window, part 2ByJonathan Corbet译者按:本文有两个笑话,看得懂的才...

Linux News搬运工 422

LWN:5.14合并窗口结束了!

关注了就能看到更多这么棒的文章哦~The conclusion of the 5.14 merge windowBy Jonathan CorbetJuly 12, 2021DeepL a...

Linux News搬运工 506

LWN:6.9 合并周期的后半部分!

关注了就能看到更多这么棒的文章哦~The rest of the 6.9 merge windowBy Jonathan CorbetMarch 25, 2024Gemini translationhttps://lwn.net/Articles/965541/6.9-rc1内核预发布版本于 3 月 24 日公布,标志着本次开发周期的合并窗口关闭。截至那时,已有 12,435 个非合并变更集(n...

Linux News搬运工 366

LWN:5.17 合并窗口的剩余部分!

关注了就能看到更多这么棒的文章哦~The rest of the 5.17 merge windowBy Jonathan CorbetJanuary 24, 2022DeepL assi...

Linux News搬运工 454

LWN:6.2合并窗口的第二部分!

关注了就能看到更多这么棒的文章哦~The rest of the 6.2 merge windowBy Jonathan CorbetDecember 27, 2022DeepL assisted translationhttps://lwn.net/Articles/918146/今年,世界收到了从 Linus Torvalds 来的一份特殊的圣诞礼物:6.2-rc1 kernel prepat...

Linux News搬运工 569

LWN: 5.13 合并窗口第二部分!

关注了就能看到更多这么棒的文章哦~The second half of the 5.13 merge windowBy Jonathan CorbetMay 10, 2021DeepL a...

Linux News搬运工 259

LWN:内核5.5合并窗口关闭!

关注了就能看到更多这么棒的文章哦~The end of the 5.5 merge windowByJonathan CorbetDecember 9, 2019原文来自:https:...

Linux News搬运工 365

LWN:5.7内核合并窗口第二部分!

关注了就能看到更多这么棒的文章哦~5.7 Merge window part 2ByJonathan CorbetApril 13, 2020原文来自:https://lwn.net/...

Linux News搬运工 724
上一篇: LWN:如何用自由软件支撑LPC会议!
下一篇: LWN:memfd_secret()
LinuxNews搬运工
博客等级 码龄7年 438粉丝 20原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值