2022年7月

GPT-3 写一篇关于它自己的学术论文,已经提交评审

研究人员给人工智能算法 GPT-3 输入了一个简单的指令:用 500 字写一篇关于 GPT-3 的学术论文,并在文中加入参考文献和引文。他们给程序了一些提示,催促它创建导言、方法、结果和讨论等部分,就像写一篇科学论文那样,但尽可能少干预。结果,GPT-3 在短短两个小时内就产生了一篇论文。目前该论文已经提交给学术期刊审核,并发表在国际预印本服务器 HAL 上。有趣是的,在提交论文时,GPT-3 表示同意研究人员也作为共同一作出现。

消息来源:《科学美国人》
老王点评:一般论文都需要同行评审,AI 的论文谁来评审?

算法可提前一周预测犯罪,准确率 90%

芝加哥大学的科学家们开发了一种新的算法,可以提前一周预测未来的犯罪,准确率约为 90%,它将城市划分为大约 1000 英尺宽的“空间瓦片”,并预测这些区域内的犯罪。该工具使用芝加哥市围绕暴力犯罪和财产犯罪事件的历史数据进行了测试和验证。该模型在美国其他七个城市的数据中表现同样出色。

消息来源:Psych News Daily
老王点评:人类的行为在 AI 看起来都在可预测范围之内,所以,我们都是活在数据中的吗?

俄罗斯人正在转向 Linux 和盗版

据《莫斯科时报》上周五报道,在微软公司于 3 月 4 日暂停俄罗斯的销售后,俄罗斯政府机构正在从微软的 Windows 系统转向 Linux 操作系统。另据《生意人报》报道,俄罗斯基于 Linux 开源操作系统的开发商也看到了更多的需求。但并非所有部门都能轻易换掉他们的系统,俄罗斯的网络上搜索盗版软件的数量激增了 250%。6 月至今,Excel 下载的搜索量激增了 650%。

消息来源:Yahoo
老王点评:说到底,还是 Linux 桌面操作系统不够争气啊。

基于 Fedora 的系统上的 mktemp 命令和基于 Debian 的系统上的 tempfile 是专门为减轻这种负担而设计的,它使创建、使用和删除独特的文件变得容易。

使用 Bash 脚本语言进行编程时,有时需要创建一个临时文件。例如,你可能需要一个可以提交到磁盘的中间文件,以便你可以使用另一个命令对其进行处理。创建诸如 temp 之类的文件或任何以 .tmp 结尾的文件很容易。但是,这些名称很可能是由其他进程生成的,因此你可能会不小心覆盖现有的临时文件。除此之外,你不应该花费脑力想出看起来独特的名字。基于 Fedora 的系统上的 mktemp 命令和基于 Debian 的系统上的 tempfile 是专门为减轻这种负担而设计的,它使创建、使用和删除独特的文件变得容易。

创建一个临时文件

mktemptempfile 都创建一个临时文件作为它们的默认操作,并打印文件的名称和位置作为输出:

$ tempfile
/tmp/fileR5dt6r

$ mktemp 
/tmp/tmp.ojEfvMaJEp

除非你指定不同的路径,否则系统会将临时文件放在 /tmp 目录中。

对于 mktemp,可以使用 -p 选项指定路径:

$ mktemp -p ~/Demo
/home/tux/Demo/tmp.i8NuhzbEJN

对于 tempfile,可以使用 --directory-d 选项:

$ tempfile --directory ~/Demo/
/home/sek/Demo/fileIhg9aX

找到你的临时文件

使用自动生成的临时文件的问题是你无法知道它的名字是什么。这就是为什么两个命令都返回生成的文件名作为输出的原因。你可以使用 Konsole、GNOME 终端或 rxvt 等交互式 shell 来使用终端上显示的文件名与文件进行交互。

但是,如果你正在编写脚本,则无法通过读取文件名并在以下命令中使用它来进行干预。

mktemptempfile 的作者想到了这个问题,并且有一个简单的解决方法。终端将输出发送到名为“标准输出”的流。你可以通过将变量设置为在子 shell 中启动的命令的结果来捕获标准输出:

$ TMPFILE=$(mktemp -p ~/Demo)

$ echo $TMPFILE
/home/tux/Demo/tmp.PjP3g6lCq1

引用文件时使用 $TMPFILE,它与直接与文件本身交互相同。

使用 mktemp 创建一个临时目录

你还可以使用 mktemp 命令创建目录而不是文件:

$ mktemp --directory -p ~/Demo/
/home/tux/Demo/tmp.68ukbuluqI

$ file /home/tux/Demo/tmp.68ukbuluqI
/home/tux/Demo/tmp.68ukbuluqI: directory

自定义临时名称

有时你甚至可能希望在伪随机生成的文件名中加入可预测性元素。你可以使用这两个命令自定义临时文件的名称。

使用 mktemp,你可以为文件名添加后缀:

$ mktemp -p ~/Demo/ --suffix .mine
/home/tux/Demo/tmp.dufLYfwJLO.mine

使用 tempfile,你可以设置前缀和后缀:

$ tempfile --directory ~/Demo/ --prefix tt_ --suffix .mine
/home/tux/Demo/tt_0dfu5q.mine

把 tempfile 作为 touch 使用

你还可以使用 tempfile 设置自定义名称:

$ tempfile --name not_random
not_random

当你使用 --name 选项时,它是绝对的,忽略所有其他形式的自定义。事实上,它甚至忽略了 --directory 选项:

$ tempfile --directory ~/Demo --prefix this_is_ --suffix .all --name not_random_at
not_random_at

在某种程度上,tempfile 可以替代 touchtest,因为它拒绝创建已经存在的文件:

$ tempfile --name example.txt
open: file exists

tempfile 命令并非默认安装在所有 Linux 发行版上,因此在将其用作脚本中的 test 的 hack 之前,你必须确保它存在。

安装 mktemp 和 tempfile

GNU Core Utils 包括 mktemp 命令。主要发行版默认包括 Core Utils(它是包含 chmodcutdu 和其他基本命令的同一个软件包)。

Debian Utils 软件包包含 tempfile 命令,默认安装在大多数基于 Debian 的发行版和 Slackware Linux 上。

总结

临时文件很方便,因为不会混淆它们是否可以安全删除。它们是临时的,意在根据需要使用并毫不犹豫地丢弃。在需要时使用它们,并在完成后清除它们。


via: https://opensource.com/article/22/6/make-temporary-file-bash

作者:Seth Kenlon 选题:lkxed 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

了解由我们生活中的所有连接设备组成的网络。

 title=

在早期,计算机既笨重又昂贵,计算机用户很少,他们必须在计算机上的预留时间内亲自来处理他们的 打孔卡 punchcard 。被称为 大型机 Mainframe 的系统进行了许多创新,并在 终端机 terminal (没有自己的 CPU 的桌面计算机)上实现了 分时 time-shared 任务。

时至今日,强大的计算设备能做到 价格低至 35 美元,且大小不超过一张信用卡。这甚至还没有涵盖现代生活中负责收集和处理数据的所有小设备。从高层次的角度来看这些计算机的集合,你可以想象得到,所有这些设备多得像云中的水滴一样。

碰巧“ 云计算 cloud computing ”一词已经被占用,因此需要为由物联网(IoT)和其他具有战略意义的服务器组成的网络提供一个独特的名称。此外,如果已经有一个代表数据中心节点的云,那么在云之外与我们交融的这些节点肯定有其独特之处。

欢迎来到雾计算

云通过互联网提供计算服务。构成云的数据中心很大,但与潜在客户的数量相比相对较少。这表明当数据在云及其众多用户之间来回传送时存在潜在的瓶颈。

相比之下, 雾计算 Fog Computing 可以在数量上超过其潜在客户,而不会出现瓶颈,因为设备执行大部分数据的收集或计算。它是云的外部“边缘”,是云落地的部分。

雾和边缘计算

雾计算和 边缘计算 edge computing 本质上是同义词。两者都与云和物联网密切相关,并做出相同的架构假设:

  • 你离 CPU 越近,数据传输就越快。
  • Linux 一样,小型专用计算机,可以“做一件事并把它做好”,这是一个强大的优势(当然,我们的设备实际上不仅仅做一件事,但从高层次上看,你购买的用于监测健康的智能手表本质上是在做“一”件事)。
  • 离线是不可避免的,但好的设备可以在此期间同样有效地运行,然后在重新连接时同步。
  • 本地设备能比大型数据中心更简单、更便宜。

边缘网络

将雾计算视为与云完全分离的实体很诱人,但它们毕竟是组成一个整体的两个部分。云需要数字企业的基础设施,包括公共云提供商、电信公司,甚至是运行自己服务的专业公司。本地化服务也很重要,可以在云核心与其数以百万计的客户之间提供 中转站 waystations

雾计算位于云的边缘,无论客户身在何处,都与他们紧密联系在一起。有时这是一个消费环境,例如你自己的家或汽车,而另一些时候这是一种商业利益,例如零售店中的价格监控设备或工厂车间的重要的安全传感器。

雾计算就在你身边

雾计算由我们生活中的所有连接设备组成: 无人机 drone 、电话、手表、健身监视器、安全监视器、家庭自动化、便携式游戏设备、园艺自动化、天气传感器、空气质量监视器等等。理想情况下,它提供的数据有助于建立一个更好、更明智的未来。有许多伟大的开源项目正朝着改善健康的方向而努力 —— 甚至只是让生活变得更有趣一点儿 —— 这一切都得益于雾和云计算。无论如何,我们的 工作是确保它 保持开放


via: https://opensource.com/article/21/5/fog-computing

作者:Seth Kenlon 选题:lujun9972 译者:hanszhao80 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

无服务器计算将服务器从规划中移除,使企业能够专注于应用功能。那么,企业是不是都应该选择无服务器计算呢?让我们来探究一下吧!

直至不久之前,几乎每个产品经理都会将他/她的工程资源,分成两个独立的团队 —— 开发团队和运维团队。开发团队通常参与编码、测试和构建应用功能,而运维团队负责应用程序的交付、部署和运行维护。

当开发团队构建电商应用时,运维团队会搭建好服务器来托管该应用。搭建服务器涉及到许多方面,其中包括:

  • 选择合适的硬件和操作系统
  • 应用所需的补丁集
  • 搭建所需服务器环境,如 JDK、Python、Tomcat、NodeJS 等
  • 部署、配置和提供实际的应用
  • 打开并固定合适的端口
  • 搭建所需的数据库引擎

……这个名单还在继续。

除此之外,管理人员还对容量规划感到头疼。毕竟,任何重要应用都应始终保持 100% 可用、可靠且可扩展。这需要对硬件进行最佳投资。众所周知,在一些关键时期,硬件短缺会导致业务损失,而硬件冗余又会损害利润。因此,无论应用是针对本地数据中心,还是针对云基础架构,容量规划都是至关重要的。到目前为止,很明显,企业不仅在功能构建上投入了大量的精力,还在功能交付上也花费了大量的时间。

无服务器计算 Serverless computing 旨在提供一种无缝的方式来交付功能,而无需担心服务器的设置和维护。换句话说,无服务器计算平台提供了一个“ 即用型 ready-to-use ”环境,企业可以尽快将应用程序构建和部署为一些较小的功能。这就是为什么这种方法被称为“ 功能即服务 Function as a Service ”(FaaS)。

请记住,无服务器计算中仍然存在服务器,但它由 AWS、微软和谷歌等 FaaS 供应商负责。

例如,AWS 以 “Lambda 函数”的形式提供了一个无服务器计算环境。开发人员可以选择将应用程序构建为一组 Lambda 函数,这些函数可以用 NodeJS、Java、Python 和其他一些语言编写。AWS 提供了一个现成的环境来部署这些函数。它还提供了即用​​型数据库服务器、文件服务器、应用程序网关和身份验证服务器等。

同样,微软 Azure 也提供了一个环境,它可以用 C# 等语言构建和部署 Azure 函数。

为什么选择无服务器?

有两个主要因素推动了无服务器计算的普及。

1、即用型环境

显然,这是无服务器计算的最大卖点。企业无需提前采购/预订硬件或实例,也无需操心许可证,以及设置和配置服务器。他们不需要为扩大和缩小规模而烦恼。所有这些都由 FaaS 供应商负责。

2、最优成本

由于 FaaS 供应商总是根据环境的利用率向客户收费(按使用付费模式),因此企业无需担心前期成本和资源浪费。例如,AWS 根据 Lambda 函数接收的请求数量、在数据表上运行的查询数量等指标来向客户端收费。

无服务器计算的挑战

与任何其他方法一样,无服务器计算也不是每个人都可以盲目遵循的完美方法。它本身也有一系列限制。以下是其中的几个。

1、供应商锁定

当使用无服务器计算时,第一个也是最重要的问题就是,Lambda 或 Azure 等函数将使用供应商提供的 API 来编写。例如,使用 AWS Lambda API 编写的函数无法部署到 Google Cloud 中,反之亦然。因此,无服务器计算迫使企业在许多年内,只能使用同一家供应商。并且,应用的成功或失败不仅取决于它的功能,还取决于供应商在性能等方面的能力。

2、编程语言

没有哪家无服务器计算平台支持所有的编程语言。此外,对于它支持的编程语言,它也可能不支持其所有版本。这样一来,应用开发团队只能选择供应商提供的语言。就团队的能力而言,这可能是非常关键的。

3、最优成本,真的吗?

其实也不一定,这一切都取决于资源的使用情况。如果你的应用正在承受巨大的负载,例如每秒数百万个请求,那么你所支付的费用可能会过高。在这样的规模下,在本地或云端拥有自己的服务器可能会更便宜。这并不意味着具有 Web 规模的应用不适合用无服务器计算。归根结底,它还是取决于你的平台的构建方式,以及你与供应商签署的协议。

4、生态系统

没有哪个应用是为了一个孤立的环境而编写的。它总是需要其他组件,如数据存储、数据库、安全引擎、网关、消息服务器、队列、缓存等。每个平台都提供自己的一组此类工具。例如,AWS 提供了 Dynamo DB 作为其 NoSQL 解决方案之一。显然,其他供应商也提供了自己的 NoSQL 解决方案。因此,团队又会被迫地基于所选平台来构建应用程序。尽管大多数商业 FaaS 供应商都为特定需求提供了多个组件,但并非每个组件都可能是同类型中最佳的。

为什么不考虑容器呢?

在过去十年中,我们中的许多人都迁移到了容器化部署模型,因为它们为昂贵的物理机或虚拟机提供了一种轻量级的替代方案。有了 Kubernetes 等编排工具后,我们乐于部署容器化应用,同时也满足了 Web 规模的要求。容器提供了与底层环境一定程度的隔离,这使得部署相对容易。但是,我们仍然需要在硬件(本地或云)、许可证、网络、配置等方面进行投资,这需要具有前瞻性的规划、合适的技术能力和仔细的监控。无服务器计算,尽管它也有自己的优点和缺点,但它让我们把这些责任也摆脱了。

展望未来

我们正处于持续开发、持续集成和持续部署的时代。每个企业都面临着竞争。产品 上市时间 Time to market (TTM)在吸引客户、留住客户这两个方面,发挥着重要作用。在这种背景下,企业喜欢花更多时间来尽可能快地推出功能,而不是在部署和维护的细节上苦苦挣扎。无服务器计算有可能满足这些需求。大玩家们正在投入巨额资金,以使 FaaS 尽可能地无缝且经济。无服务器计算的未来看起来是一片光明。


via: https://www.opensourceforu.com/2021/12/should-businesses-opt-for-serverless-computing/

作者:Krishna Mohan Koyya 选题:lkxed 译者:lkxed 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

不值得使用 -O3 来编译 Linux 内核

在内核社区有人 建议 在更多范围内使用-O3 编译优化参数后,Linus Torvalds 迅速 驳斥 了这一想法,因为在他看来,这带来的潜在问题更多。Phoronix 使用其著名的测试套件对 -O3 编译的内核性能进行了测试。结论是:在 230 项测试中,-O3 内核的性能只领先了 1.3%,仅在压力测试软件 Stress-NG 的上下文切换基准中有近三倍的提升,一些数据库场景有 10% 左右的提升,其它场景仅有 2% 左右的变化。总体来说,考虑到 -O3 带来的过度优化的潜在风险,使用这个优化参数没什么意义。

消息来源:Phoronix
老王点评:这下可以尘埃落定了。

Firefox 102 现在可以自动删除 URL 中的跟踪器

这项名为“查询参数剥离”的新功能,可以在你点击一个链接时自动删除 URL 中的跟踪参数。很多网站会在 URL 中附加特定的查询字符串来跟踪链接访问,比如 Facebook 使用的是 fbclid= 。Mozilla 大约在一年前开始研究这一功能,现在它已经准备好供公众使用。这项新功能是严格跟踪保护规则的一部分,但默认情况下是禁用的,因为有可能会破坏正常浏览体验。

消息来源:Engadget
老王点评:看得出来,虽然 Firefox 有种种不尽如人意之处,但是对用户隐私的保护真是竭尽全力了。

欧美大范围的路由器受到了新的、异常复杂的恶意软件的攻击

安全研究人员报告说,一个异常先进的黑客组织花了近两年时间,用恶意软件感染了北美和欧洲的各种路由器,完全控制了与路由器连接的 Windows、macOS 和 Linux 设备。他们已经发现至少有 80 个目标被这种隐秘的恶意软件感染,感染的路由器包括思科、Netgear、华硕等制造的设备。它能够列举所有连接到受感染的路由器的设备,并收集它们发送和接收的 DNS 查询和网络流量,并保持不被发现。

消息来源:ArsTechnica
老王点评:这是专门针对小型办公室和家庭办公室路由器编译的定制恶意软件,背后所图甚大。