Debian 爱好者社区 为您找到相关结果 635

UCloud 叶理灯 谈:Docker、K8S 和 Serverless

FaaS,有一个对标的产品叫 Lambda。 Serverless 出现的动力是,由于云计算的发展,带来了如对象存储等很多丰富的中间件,Serverless 概念的提出是希望应用开发者可以不用写后端逻辑,直接把逻辑写在客户端,组合云上的一些服务来完成业务逻辑,这样就没有管理后端资源的负担了。但是后来发现很多时候还是需要后端代的,所以就演变成如果有后端代,就拆成函数,托管在 FaaS 服务中,这样的话,你依然是不用管理服务器的,你用的还是一个个服务,没有服务器管理负担。 这个概念在不断进步,2017 年的时候 AWS 提出了一个新的概念,重新定义了什么叫 Serverless,只要一个服务具备了四方面特性:免运维、按需付费、高可用和自动扩容,这个服务就是个 Serverless 的服务。所以...阅读全文

博文 2019-06-14 08:28:49 debian.cn

如何校验 Debian 软件包的 MD5

你有没有想过为什么安装在你系统上的某个二进制文件或软件包没有按预期的那样来运行,或者说没有按正常的方式来运行,也许它根本就无法启动。 考虑到这是维系统上未损坏软件包的一个重要因素,因而对照存储在软件包中的信息,验证文件系统上的文件是个重要步骤,为此需要阅读本文。 推荐阅读:《学会如何在Linux下生成MD5校验和并使用它来校验文件?》 如何对照MD5校验和校验已安装的Debian软件包? 在Debian/Ubuntu系统上,你可以使用debsums工具来校验已安装软件包的MD5和。如果你想在安装之前知道关于debsums软件包的信息,可以使用APT-CACHE,就像这样: $ apt-cache search debsums 下一步,使用apt命令来安装它,如下所示: $ sudo...阅读全文

博文 2021-01-28 17:50:18 debian.cn

Kubernetes常用命令大全(持续更新)

记 my-node 不可调度 kubectl drain k8s-node #### 清空 my-node 以待维 kubectl uncordon k8s-node #### 标记 my-node 可调度 kubectl top node k8s-node #### 显示 my-node 的指标度量 kubectl cluster-info dump #### 将当前集群状态输出到 stdout kubectl cluster-info dump --output-directory=/path/to/cluster-state #### 将当前集群状态输出到 /path/to/cluster-state 如果该键和影响的污点(taint)已存在,则使用指定的值替换 kubectl...阅读全文

博文 2020-03-13 12:35:13 debian.cn

Ubuntu 17.04(Zesty Zapus)正式版发布

从之前的 Ubuntu 发行版升级过来,这是唯一一个不适用的地方。 此外,默认的 DNS 解析器转换为了 systemd-resolved。IPP Everywhere 和苹果 AirPrint 打印机支持免驱动的开箱即用。绝大多数来自 GNOME 家族的包都升级到了 GNOME 3.24,只有 Nautilus 仍然持在 GNOME 3.20.4 版本。 gconf 工具不再默认安装,因为它现在已经被 gsettings 所代替。而安装的应用大多数都是最新的,比如 LibreOffice 5.3 办公套件,Mozilla Firefox 52.0.1 Web 浏览器,以及 Mozilla Thunderbird 45.8.0 邮箱和新闻客户端。 Nautilus 文件管理器 从本次发行版...阅读全文

博文 2021-01-28 17:50:27 debian.cn

Linux内存buffer和cache的区别

"read" from the disk and stored for later use. 2.1 Cache Cache:高速缓存,是位于CPU与主内存间的一种容量较小但速度很高的存储器。 由于CPU的速度远高于主内存,CPU直接从内存中存取数据要等待一定时间周期,Cache中存着CPU刚用过或循环使用的一部分数据,当CPU再次使用该部分数据时可从Cache中直接调用,这样就减少了CPU的等待时间,提高了系统的效率。 Cache又分为一级Cache(L1 Cache)和二级Cache(L2 Cache),L1 Cache集成在CPU内部,L2 Cache早期一般是焊在主板上,现在也都集成在CPU内部,常见的容量有256KB或512KB L2 Cache。 2.2 Buffer Buffer:缓...阅读全文

五种绕过 Linux 命令别名的方法

或显示关于命令的信息。它带参数运行命令,会阻止 shell 函数查询或者别名,或者显示有关给定命令的信息。 方法 5 - 使用 unalias 命令的说明 要从当前会话的已定义别名列表中移除别名,请使用 unalias 命令: unalias mount 要从当前 bash 会话中删除所有别名定义: unalias -a 如果要永久删除定义的别名,则必须删除别名的定义语句,确你更新你的 ~/.bashrc 或 $HOME/.bash_aliases : vi ~/.bashrc #或者执行 vi $HOME/.bash_aliases 想了解更多信息,参考这里的在线手册,或者输入下面的命令查看: man bash help command help unalias help alias...阅读全文

博文 2018-03-08 13:33:02 debian.cn

轻量级发行版 Alpine Linux 介绍

Alpine Linux 操作系统是由社区开发的,面向安全的轻型 Linux 发行版,它和其他常见的 Linux 发行版不同。Alpine 采用了 musl libc 和 busybox 以减小系统体积和运行时的资源消耗,功能上要比 busybox 完善的多,因此得到开源社区越来越多的青睐。 在持瘦身的同时,Alpine 提供了自己的包管理工具 apk,可以在官方网站上查询包信息,也可以通过类似 apt 和 yum 的方式,在命令行查询或安装软件。 Alpine 支持广泛的场景,它特别为资深/重度Linux用户而优化,关注安全,性能和资源利用率,是一个优秀的可适用于生产环境的基础系统。 Alpine Docker 镜像继承了 Alpine Linux 发行版的这些优势。相比于其他...阅读全文

博文 2018-06-16 13:48:00 debian.cn

IBM宣布以340亿美元收购RedHat 组建混合云提供商

多数公司租用计算能力来削减成本,它们的云计算之路仅走到 20%”,她解释:“接下来的 80% 是关于释放实际业务价值和推动增长的,这才是云的未来。它需要将业务应用程序转移到混合云中,提取更多数据并优化从供应链到销售业务的每个部分。“ Red Hat 总裁兼首席执行官 Jim Whitehurst 表示:“开源是现代 IT 解决方案的默认选择,我对 Red Hat 在企业中实现这一目标所发挥的作用感到非常自豪。与 IBM 合作将为我们提供更高水平的规模、资源和能力,以加速开源作为数字化转型基础的影响,并将红帽带给更广泛的受众。同时留我们独特的文化和坚定不移的开源创新承诺。“ 如果一切顺利,预计该交易将在明年下半年完成。...阅读全文

树莓派4上如何安装 Raspbian Buster

载好操作系统后,会得到一个zip的压缩文件。先解压,我们会用到里面的一个 .img 格式的操作系统镜像文件。文件准备好后,就可以进入下一步操作了。 在SD卡中灌入系统 这一步,我们需要下载一个软件,以便录入系统。虽然 RaspberryPi Foundation推荐使用 Etcher,但个人建议使用 Win32DiskImager,操作比较简单,录入成功率也比较高。 运行 Win32DiskImager 后,可以看到上图。打开首选的磁盘映像器,然后选择您的SD卡。通过在资源管理器中检查确认 SD卡驱动器 的名称,确它是你的microSD卡,而不是其他驱动器。 注意:如果您不小心选择了错误的驱动器,则会丢失大量数据。 一旦你确认了SD卡的设备名,就可以选择第一步中,准备的 .img。在...阅读全文

博文 2020-02-04 19:33:29 debian.cn

Kubernetes 1.18 发布

Kubernetes 1.18 发布了,这是 2020 年首次版本发布。此版本包含 38 项功能增强,其中 15 项为稳定版功能、11 项 beta 功能以及 12 项 alpha 版功能。 主要更新亮点包括: Kubernetes 拓扑管理器 beta 拓扑管理器的作用是让 CPU 与其它设备(例如 SR-IOV-VF)实现 NUMA 对齐,进而让工作负载运行在优化环境中以降低延迟。在拓扑管理器推出之前,CPU 与设备管理器只能彼此独立地做出资源分配决策。此版本拓扑管理器已经发展到 beta 版本。 Serverside Apply beta 2 beta 2 版本将跟踪并管理所有新 Kubernetes 对象的字段变更,确用户及时了解哪些资源在何时进行过更改。 使用...阅读全文

博文 2020-03-27 18:28:34 debian.cn

分布式 NewSQL 数据库 TiDB

hash 分区表时指定非常大的分区数量导致 TiDB OOM 的问题 #16219让 union 语句的行为和 select 语句持相同,修复把 warnings 当 error 的问题 #16138修复 TopN 下推到 mocktikv 中的执行错误 #16200增大 chunk.column.nullBitMap 的初始化长度,以避免多余的 runtime.growslice 开销 #16142TiKV修复 replica read 导致 TiKV panic 的问题 #7418 #7369修复 restore 产生许多空 Region 的问题 #7419修复重复的 resolve lock 请求可能会破坏悲观事务原子性的问题 #7389TiFlash修复从 TiDB 同步 schema...阅读全文

博文 2020-04-18 22:05:02 3.1.0 发布

如何重启 Kubernetes 中的 Pods

{namespace} 这个方法简单粗暴有效。因为 Kubernetes 是声明式 API,所以删掉了之后,Pod API 对象就与预期的不一致了,便会自动重新创建 Pod 持与预期一致。但是如果ReplicaSet 管理的 Pod 对象很多的话,那么要一个个手动删除,会很麻烦,所以可以使用命令来删除 ReplicaSet, kubectl delete replicaset {rs_name} -n {namespace} 由于 Deployment 对象并不是直接操控的 Pod 对象,而是操控的 ReplicaSet 对象,而 ReplicaSet 对象就是由副本数目的定义和Pod 模板组成,所以我们也可以通过调整 ReplicaSet 的数量来实现重启,比如先 scale 到 0,然后再 scale...阅读全文

博文 2020-07-13 21:23:30 debian.cn

2022年云原生服务网格展露的五大趋势

性能问题。四是 无 Sidecar 模式的服务网格可供选择。Istio 推出了 Ambient 部署模式,这是一种新的 Istio 数据平面模式,旨在简化操作、扩大应用兼容性并降低基础设施成本。用户可以选择将 Ambient Mesh 集成到其基础设施的网格数据平面,放弃 sidecar 代理,同时持 Istio 的零信任安全、遥测和流量管理等核心功能。五是 WebAssembly 崛起。WebAssembly 正在发展成为云原生环境中跨平台、多语言的沙箱环境,甚至可以替代容器运行时,在 Kubernetes 中编排调度。 WasmEdge、KubeEdge、Istio 等项目可以从控制平面无缝编排 Wasm 工作负载。...阅读全文

WordPress 4.8 Evans 正式版发布

,WordPress 用户无需了解代知识。只要挂件的正确设置插入图片就可以了。试试添加一张你的头像,或者最新照片,一切都像自动的一样。 视频挂件(小工具) 一个受欢迎的视频,是最棒的宣传网站途径之一。通过这个新的视频挂件,你可以把媒体库里的视频文件轻松添加到视频挂件中。给你的网站访客做个欢迎短片,向访问者们介绍你的网站,或者宣传你最新的促销活动。 音频挂件(小工具) 如果你想成为一个播客、音乐人、或者博客网红,那使用音频文件无疑是最合适的了。上传你的音频文件到媒体库,然后在挂件设置里,选择你的文件,然后准备好播放给你的听众。同时,音频文件也非常适合播放网站的语音欢迎信息。 富文本挂件(小工具) 这绝对是一个极大且实用的功能改进!文本挂件现在拥有了富文本编辑能力。你可以在挂件中快速添加各种格式的文本内容:列表...阅读全文

博文 2021-01-28 17:50:32 debian.cn

Go 1.9 的新特性介绍

, 可以使用./vendor/...通配符。 性能提升 性能提升多少势很难精确描述的,对于大部分的程序,应该运行更快一点。 主要在于垃圾回收器的优化、更好的生成的代以及核心库的优化。 完整的信息可以参考 Tip Go 1.9 Release Notes, Go 1.9发布后可以访问Go 1.9 Release Notes 本文转自 http://colobu.com/...阅读全文

博文 2021-01-28 17:50:34 debian.cn

Ceph 基金会正式成立 接受 Linux 基金会的管理

(SARAO),加州大学圣克鲁兹分校开放源软件研究中心(CROSS)等。 Linux基金会执行董事Jim Zemlin说:"Ceph在帮助企业有效管理高增长和扩展数据存储需求方面有非常丰富的经验,在Linux基金会下,Ceph基金会将能够利用更多资源来帮助完善Ceph生态系统建设。" Ceph联合创始人&Red Hat Ceph首席架构师 Sage Weil说:"Ceph基金会的成立证明了一个多元化的开源社区的力量所在,各方共同联合起来致力于解决数据存储和数据服务的爆炸性增长。" Ceph被世界各地的云提供商和企业使用,包括金融机构(Bloomberg,Fidelity),云服务提供商(Rackspace,Linode),学术和政府机构(Massachusetts Open Cloud),电信基础设...阅读全文

Harbor项目发布v1.7 2018圆满收官

2018年,Harbor开源镜像仓库项目取得了长足的进步,硕果累累:全年共发布了5个大版本,28 个小版本,社区代贡献者超过110名,Github 上的星星从年初 3000+ 增至 6400+。全球范围内,将 Harbor 应用于生产系统的用户更是数以千计。 Harbor 开源项目于今年8月捐献给云原生计算基金会(CNCF),成为首个源创于中国的CNCF项目。 不久前,Harbor在中国首届 KubeCon + CloudNativeCon 上,再度晋级,成为 CNCF 第19个孵化级(incubating)项目,项目团队还登上大会主场舞台,和用户分享这一激动人心的历史时刻。于此同时,该大会上,Harbor 社区还联合 CNCF 举办了 Harbor 社区线下活动,并为 Harbor 项...阅读全文

博文 2018-12-30 09:35:15 debian.cn

DNS SRV:使用DNS服务器做服务发现

型代为 33。SRV的记录格式为: _Service._Proto.Name TTL Class SRV Priority Weight Port Target Service: 服务名称,前缀“_”是为防止与DNS Label(普通域名)冲突。 Proto: 服务使用的通信协议,_TCP、_UDP、其它标准协议或者自定义的协议。 Name: 提供服务的域名。 TTL: 缓存有效时间。 CLASS: 类别 Priority: 该记录的优先级,数值越小表示优先级越高,范围0-65535。 Weight: 该记录的权重,数值越高权重越高,范围0-65535。 Port: 服务端口号,0-65535。 Target: host 地址。 客户端查询到多条记录的时候,使用优先级最高的记录。对相同优先...阅读全文

博文 2019-03-05 09:35:34 debian.cn

Oracle Linux 8.0 发布

于 RPM 的 Linux 发行版上安装、更新和删除软件包。引入 Cockpit 服务器远程管理器,这是一个简单、轻量级但功能强大的交互式 GNU/Linux 服务器远程管理器,可通过 Web 浏览器提供实时 Linux 会话。 内核 modinfo 命令已更新,可识别和显示使用 CMS 和 PKCS#7 格式签名的模块签名信息。一组内核模块移动到 kernel-modules-extra 包中,这意味着默认情况下这些模块都不安装,非 root 用户也无法加载这些组件,因为默认情况下它们也被列入黑名单。内存总线限制已扩展到 128 PiB 的虚拟地址空间和 4 PB 的物理内存容量。Linux 内核中的 I/O 内存管理单元(IOMMU)代也会更新以启用 5 级分页表。kdump 特性可以...阅读全文

博文 2019-07-20 22:39:32 debian.cn

Linux 5.11窗口合并期今天结束 引入大量新特性

持,图形驱动中的异步翻页,用于缓解射频干扰的新 "RFIM "驱动,围绕Rocket Lake和Alder Lake的新设备ID,WiFi驱动内的WiFi 6GHz频段支持,以及其他工作。 在 AMD 方面,主要围绕着改进电源管理和传感器处理,CPU 帧率频率不变性支持(虽然与 Schedutil 在一些系统上处于糟糕的状态),AMD 传感器融合枢纽驱动程序终于被合并,以支持Ryzen笔记本电脑上的传感器功能,以及其他各种改进。 Linux 5.11 还为不知名的设备提供了新的硬件支持,从失败的 OUYA 游戏机到 Guitar Hero Live PS3 / Wii U 扩展坞。 改进内容如下: 处理器: - 经历了 40 多轮的代审查之后终于整合了 Intel SGX enclaves...阅读全文

博文 2020-12-28 10:14:35 debian.cn

Linux 进程 PID 编号最大为多少

默认值如下: 可见,虽然是64位系统,但默认也设置了32768,确实如手册中描述一致。通过: echo value > /proc/sys/kernel/pid_max 手动修改,可以设置预期的最大pid数值(2^22以下) 附Linux内核源地址: 官网链接:https://www.kernel.org/ git: https://git.kernel.org/ 镜像:https://mirrors.edge.kernel.org/pub/...阅读全文

博文 2021-01-12 11:47:15 debian.cn

三个技巧 大幅减少 Docker 镜像体积

个。 镜像的层就像 Git 的提交(commit)一样。Docker 的层用于存镜像的上一版本和当前版本之间的差异。就像 Git 的提交一样,如果你与其他存储库或镜像共享它们,就会很方便。 实际上,当你向注册表请求镜像时,只是下载你尚未拥有的层。这是一种非常高效地共享镜像的方式。但额外的层并不是没有代价的。层仍然会占用空间,你拥有的层越多,最终的镜像就越大。Git 存储库在这方面也是类似的,存储库的大小随着层数的增加而增加,因为 Git 必须存提交之间的所有变更。 过去,将多个 RUN 语句组合在一行命令中或许是一种很好的做法,就像上面的第一个例子那样,但在现在看来,这样做并不妥。 1. 通过 Docker 多阶段构建将多个层压缩为一个 当 Git 存储库变大时,你可以选择将历史提交记录...阅读全文

博文 2018-09-06 10:50:29 debian.cn

OpenAI掌门人Sam Altman:AI的下一个发展阶段_OneFlow

:现在科学界对AI的应用分为两种。一种是将AI工具直接用于科学目的,如AlphaFold(用于蛋白质结构预测),它们可以创造巨大价值,相信未来会出现无数这样的工具。 另一种是将AI工具用于提升科研工作效率,如帮科学家和工程师找到新研究方向、写代等。Copilot编程工具就是一个例子。但AI工具的能力远不止于此。上述两种AI应用将会大大推动科技前进。 此外,目前科学界也在探索对AI的第三种应用方式——让AI成为可以“自我改进”的科学家。这件事情既有好处也有风险。 好的一面是,可以利用AI将人类的工作内容自动化,教会AI做任何人类可以做的事情:探索新科学、提出理论解释、验证、思考等,或许还可借此解决困扰人类已久的“AI对齐问题(Alignment Problem)”(即如何让AI系统的目标符合人...阅读全文

博文 2023-02-04 15:55:11 CSDN博客

Debian的版本号及distributions

distribution的revision level递增,比如从3.0变为3.0r1,2.2r4变为2.2r5 APT::Default-release 在不同的环境下,我们对debian系统的要求也会不同,比如在生产环境下,我们希望系统是相当稳定的,这时stable就是最好的选择;而对于一个喜欢尝试新功能、新软件的用户,testing或unstable可能更合适些。要达到这样的要求,我们可以在/etc/apt/sources.list文件中只指定一种distribution源,比如想使用stable distribution,就在sources.list里只加入stable源,这样系统上安装的package的版本都会是进入了stable的版本。但有些时候我们也需要一个混合的系统,比如希望在持整个系统是...阅读全文

博文 2021-01-28 17:50:08 debian.cn

PostgreSQL 13 正式版发布

-ahead logs)之前将其删除,现在可在 PostgreSQL 13 中进行调整,以指定要留的 WAL 文件的最大数量, 有助于避免磁盘空间不足错误。 PostgreSQL 13 还增加了更多让管理员可以监控数据库活动的方法,包括从 EXPLAIN 中查看 WAL 使用情况的统计信息、流式基础备份的进度,以及 ANALYZE 命令的进度。此外,可以使用新的 pg_verifybackup 命令验证 pg_basebackup 命令输出的完整性。 应用开发 PostgreSQL 13 对来自不同数据源的 PostgreSQL 数据类型进行了优化。此版本在其 SQL/JSON 路径支持中增加了datetime()函数,它可以将有效的时间格式(如 ISO 8601 字符串)转换为...阅读全文

博文 2020-10-04 20:07:23 debian.cn

AWS EKS 添加IAM用户角色 - SRE运维博客

的联合身份用户。如果使用不属于 aws-auth ConfigMap 的 IAM 用户或角色访问 Amazon EKS 控制台,则无法看到 Kubernetes 工作负载。也不会看到集群的概览详细信息。所以要向其他 AWS 用户或角色授予与集群交互的能力,您必须在 Kubernetes 中编辑 aws-auth ConfigMap。 因为部门有不通的角色,所以想基于不通的角色分配不同的权限,下面是记录添加一个对 EKS 只有只读权限的 AIM 用户。 {{< notice info "注意:" >}} 如果您在运行 AWS 命令行界面 (AWS CLI) 命令时遇到错误,请确您使用的是最新版的 AWS CLI。 {{< /notice >}} 为 IAM 用户或角色配置权限 要查找具有主要...阅读全文

博文 2022-12-19 21:15:27 博客园

bmon:一个强大的网络带宽监视和调试工具

[On Debian/Ubuntu/Mint] 另外,你也可以从 https://pkgs.org/download/bmon 获取对应你 Linux 发行版的 .rpm 和 .deb 软件包。 如果你想要最新版本(例如版本 4.0)的 bmon,你需要通过下面的命令从源构建。 在 CentOS、RHEL 和 Fedora 中 $ git clone https://github.com/tgraf/bmon.git $ cd bmon $ sudo yum install make libconfuse-devel libnl3-devel libnl-route3-devel ncurses-devel $ sudo ./autogen.sh $ sudo./configure...阅读全文

博文 2021-01-28 17:50:27 debian.cn

高性能缓存服务器 Nuster

param_type: Y body: (empty) 所以默认的 key 就会得到GEThttpwww.example.com/qname=X&type=Y, 而 key method.scheme.host.path.header_ASDF.cookie_user.param_type则会生成 GEThttpwww.example.com/qZnusterY 一个请求的 key 能在缓存中找到则返回缓存内容。 ttl TTL 定义 key 的失效时间,可以使用 d, h, m and s。默认3600秒. 如果不希望失效则设为 0 code CODE1,CODE2... 默认只缓存 200 的响应,如果需要缓存其他的则可以添加,all会缓存任何状态。 cache-rule only200 cache...阅读全文

博文 2017-12-15 22:17:31 debian.cn

中国开源人访谈系列之:清风博主

、kde4到现在的kde5,一直在折腾。 2008年申请过两次Ubuntu的光盘 收到的或刻录的部分光盘 最大的困难肯定是英语了,到现在也只是能看一些简单的技术文章,大段的英文一看就头大,肯定影响深入学习。对新手的建议:英语很重要! 3.您会使用Linux来做与地理或者教学有关的事吗? 答:现在日常使用的就是Linux桌面环境,自然教学工作也是用它。比如多媒体教学,用Linux基本没问题,学生都知道我的操作系统挺特别的。必须要windows系统的场景,一般用虚拟机也就够了。 4.曾经有没有考虑过从事计算机相关行业? 答:现在也算半个程序员吧,写过业余水平的php,也在帮人维服务器。毕竟不是专业的,许多问题都是知其然而不知其所以然,因此业余时间主要是混QQ群,帮助别人,也提高自己。要说去从事计算机相...阅读全文

博文 2021-01-28 17:50:13 debian.cn

基于thanos搭建分布式prometheus

querier会根据label自动去重,确返回给grafana的数据不会重复,这个特性很关键。 有了thanos querier组件,我们可以很简单的解决单点故障问题: 部署N个prometheus同时抓取数据,然后thanos querier代理它们,这样prometheus挂了一台也不影响服务,数据在其他prometheus上还有。 方案1:thanos sidecar + thanos querier 实际上,querier不能直接反向代理prometheus,而是需要在prometheus的POD内部署一个thanos sidecar组件,querier反向代理至sidecar,再由sidecar查询POD内的prometheus。 querier和sidecar之间走GRPC协议,POD内的...阅读全文

博文 2021-03-01 13:02:46 鱼儿的博客

Golang 中的 channel 通道详解

channel通道golang的并发模型是序列通信处理CSP(communicating sequential process)——使用通信来共享内存 ,避免goroutine因竞争共享内存频繁加锁产生的性能问题。基本数据结构golang中提供了一个特殊的类型channel实现goroutine之间的通信。channel类似于队列,先进先出。channel数据结构源在src/runtime/chan.go下。chan 使用 hchan 表示,它的传参与赋值始终都是指针形式,每个 hchan 对象代表着一个 chan。hchan 中包含一个缓冲区 buf,它表示已经发送但是还未被接收的数据缓存。buf 的大小由创建 chan 时的参数来决定。qcount 表示当前缓冲区中有效数据的总量...阅读全文

树莓派 9 周年:你不知道的树莓派冷知识

树莓派中的实现,可以将树莓派变成 Chromebook。Windows 10:是的,甚至有用户经过一番折腾,成功在 Raspberry Pi 4 上安装了 Windows 10,但由于硬件架构适配性不足等原因,运行速度很慢,慎用。 Lakka:该操作系统专为一些复古游戏而设计,预装了一系列模拟器,可以将树莓派变成一台老式游戏机。6.太空中运行着两台树莓派这绝对算是一个有趣的冷知识。国际空间站运行着两台“Astro Pis”设备,事实上,这是经过特别改良的 Raspberry Pi B+ 型,这两台树莓派经过“空间改造”以适应太空环境,并配备了官方的 Raspberry Pi Sense HAT。欧洲航天局会举办定期竞赛,孩子们提交的代可以在外太空的这两台设备上远程运行,以进行一些有趣的空间...阅读全文

博文 2021-03-11 17:03:55 diablo4

理解 Linux 的虚拟内存

理内存的 C 地址。 我们知道系统里的基本单位都是 Byte 字节,如果将每一个虚拟内存的 Byte 都对应到物理内存的地址,每个条目最少需要 8字节(32位虚拟地址->32位物理地址),在 4G 内存的情况下,就需要 32GB 的空间来存放对照表,那么这张表就大得真正的物理地址也放不下了,于是操作系统引入了 页(Page)的概念。 在系统启动时,操作系统将整个物理内存以 4K 为单位,划分为各个页。之后进行内存分配时,都以页为单位,那么虚拟内存页对应物理内存页的映射表就大大减小了,4G 内存,只需要 8M 的映射表即可,一些进程没有使用到的虚拟内存,也并不需要存映射关系,而且Linux 还为大内存设计了多级页表,可以进一页减少了内存消耗。操作系统虚拟内存到物理内存的映射表,就被称为页表...阅读全文

博文 2018-11-25 11:03:49 debian.cn

处理器架构消亡史

架构也都是由RISC体系中发展出来的处理器架构。包括IBM所推出的Power架构也都是RISC体系中的一员。他们的到来,构建了出了璀璨的处理器架构时代,也对当时的英特尔造成了一定的压力。各领风骚数十载SPARC(可扩展处理器体系结构)是最初由Sun Microsystems开发的精简指令集计算(RISC)指令集体系结构(ISA)。它的设计在很大程度上受到早期RISC设计的影响,包括来自加利福尼亚大学伯克利分校和IBM 801的RISC I和II 。这些原始的RISC设计极简,包括尽可能少的功能或操作,旨在以每个时钟周期几乎一条指令的速率执行指令。SPARC于1986年首次开发,并于1987年发布,是最成功的早期商业RISC系统之一。在其推出首款SPARC处理器产品后,SPARC就很快地占领...阅读全文