
Linux
文章平均质量分 85
太阳伞下的阿呆
愿天下的每个阿呆都能拥有一个可以依靠的太阳伞
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
配置Mac/Linux终端启动执行脚本
如果系统是Linux,默认的终端脚本都是bash。因此需要在home目录下配置**如果系统是mac,默认的终端脚本都是zsh。因此需要在home目录下配置**这将显示当前shell进程的信息,包括使用的shell路径。这条命令会输出当前用户默认使用的shell路径,例如。配置终端启动执行脚本。原创 2025-07-25 21:53:17 · 266 阅读 · 0 评论 -
阿里云服务器安装JDK21
国内推荐:清华大学开源镜像站。原创 2025-07-12 07:40:22 · 441 阅读 · 0 评论 -
Linux的读写屏障
在 Linux 中,(Read-Write Barriers,简称 RWB)是对内存访问顺序的一种控制机制,用来保证在多核处理器环境下,内存访问的正确顺序,避免因乱序执行导致的数据一致性问题。它是操作系统内核或硬件架构(如 x86, ARM 等)中实现内存顺序性的一种手段。原创 2025-05-24 22:16:47 · 1072 阅读 · 0 评论 -
cpu缓存一致性
用于缓存即将写回主内存的数据,缓解写延迟、支持乱序执行,并帮助缓存一致性协议协调处理器间的写操作。:用于管理缓存行的失效操作,记录需要失效的缓存行,确保其他处理器不会读取过时或不一致的数据。这两者通过配合工作,协同维护多核处理器系统中的缓存一致性,减少了不必要的内存访问、避免了数据竞争,提高了多核系统的整体性能和吞吐量。原创 2025-05-10 16:50:06 · 921 阅读 · 0 评论 -
正向代理与反向代理
是客户端的代理,帮助客户端访问外部资源,隐藏客户端的真实 IP。原创 2025-03-22 22:08:43 · 586 阅读 · 0 评论 -
域名配置服务端口
你遇到的错误很可能是因为你没有足够的权限绑定特权端口(如 80 端口)。以 root 用户或通过sudo运行 Java 应用程序;确保没有其他进程占用该端口;检查防火墙和安全组规则;如果使用 SELinux,检查并调整策略。如果你希望绑定到 80 端口,但不想以 root 身份运行 Java 应用,可以考虑使用端口转发工具,如iptables或authbind,将 80 端口的流量转发到高于 1024 的端口上。原创 2025-03-08 13:51:38 · 1070 阅读 · 0 评论 -
CentOS 8 如何安装java与mysql
它影响数据库的可靠性、数据安全性以及性能,通常在高并发或对数据安全性有特殊要求的应用场景中需要进行调整。CentOS 8 默认仓库中并不包含 MySQL 8,因此需要通过 MySQL 官方的 YUM 仓库来安装。如果您的系统上安装了多个版本的 Java,您可以通过以下命令设置默认的 Java 版本。现在,您的 CentOS 8 系统上应该已经成功安装了 Java 和 MySQL。按照提示,您可以设置新的 root 密码,移除匿名用户,禁止远程登录等。根据提示选择您需要的版本。原创 2025-01-10 20:53:39 · 1166 阅读 · 0 评论 -
CentOS 8 上搭建SFTP服务
通过禁用密码认证和挑战响应认证,可以确保服务器只使用公钥认证,这会提高 SFTP 安全性并避免认证冲突。错误通常是因为 SSH 连接超时、网络问题或服务器端配置不当引起的。通过调整 SSH 客户端和服务器的超时设置、检查防火墙规则和权限设置,通常可以解决这个问题。如果问题仍然存在,查看日志可以帮助进一步诊断。错误通常是由于 SSH 对于chroot目录的权限要求不满足。你需要确保chroot目录的所有者是root,并且权限设置为 755,且子目录的权限适合用户操作。通过以上操作,应该可以解决问题。原创 2025-01-04 16:16:06 · 1813 阅读 · 1 评论 -
系统上下文切换分析
这是多任务操作系统的一个重要功能,但频繁的上下文切换可能会导致性能下降,因为每次上下文切换都涉及保存和恢复CPU状态,这会消耗CPU时间。在这种情况下,CPU的总使用率为6.9%(用户+系统),这表明CPU大部分时间是空闲的。在这种情况下,系统CPU使用率很高,特别是系统时间占比显著增加,同时上下文切换次数非常高,表明系统可能由于频繁的上下文切换导致性能瓶颈。在这种情况下,CPU使用率很低,表明系统大部分时间是空闲的,上下文切换次数虽然存在但并未对系统性能造成显著影响。表示上下文切换次数。原创 2024-08-24 09:19:58 · 1024 阅读 · 0 评论 -
图说Linux cpuinfo
即为所有物理CPU上的core的总数,实际数量可能原创 2024-03-30 10:59:20 · 952 阅读 · 0 评论 -
shell常用命令
持续更新提取关键字grep -i biztype 2017_09_05.stderrout.log | sed 's/.*\("bizType":[0-9]\).*/\1/g'grep -i biztype 2017_09_05.stderrout.log | while read line; do expr "$line" : '.*\(\"bizType\&原创 2019-02-20 11:12:55 · 654 阅读 · 1 评论 -
共享内存架构中的缓存一致性
摘自曼彻斯特大学伊恩·沃森的讲座概述我们已经讨论过在单核上的性能优化局部性向量现在让我们优化一个共享内存程序两种架构:基于总线的共享内存机器(小规模)基于目录的共享内存机器(大规模)基于总线共享内存的体制基本情况很简单:(3)
目录内存管理中的分区分配方法(1)伙伴系统(算法)-内存分配技术(2)分配内核内存(buddy系统和slab系统)(3)管理内核进程空闲内存的两种策略:1. 伙伴系统 –伙伴分配系统是一种算法,它把一个大的内存块切分为一个小的部分来满足请求。该算法通常给出最符合的内存块。块的两个更小的子部分是相同大小的,称为伙伴。两个伙伴中的一个以同样的方式进一步切分为更小的子部分,直到请求被满足为止。该技术的好处是两个伙伴可以根据内存请求合并形成一个大尺寸的块。例如 – 如果发出一个需求25Kb的请求翻译 2020-05-10 08:20:50 · 1037 阅读 · 0 评论 -
伙伴系统(算法)-内存分配技术(2)
目录内存管理中的分区分配方法(1)伙伴系统(算法)-内存分配技术(2)分配内核内存(buddy系统和slab系统)(3)算法描述静态分区 方案受固定活跃进程数的限制,并且空间的使用也可能不是最优的。伙伴系统是一个内存分配与管理算法,该算法管理的内存以2的幂次增长。假设内存大小是2,假设需求S大小的内存。If 2<S<=2: 分配全部内存Else: 递归二等分切分块,...翻译 2020-05-03 15:28:05 · 1066 阅读 · 0 评论 -
内存管理中的分区分配方法(1)
目录内存管理中的分区分配方法(1)伙伴系统(算法)-内存分配技术(2)分配内核内存(buddy系统和slab系统)(3)四种常见的内存管理技术在操作系统中,以下是四种常见的内存管理技术单一连续分配: MS-DOS使用的最简单的分配方法。所有内存(除了一些为OS预留的内存) 都可以用于一个进程分区分配: 内存被分成不同的块或区。每个进程基于需求分配内存。分页内存管理: 内存被分到...翻译 2020-05-02 22:39:25 · 1982 阅读 · 0 评论 -
FreeBSD的一个可扩展的并发malloc(3)实现
Jason Evans jasone@FreeBSD.orgApril 16, 2006摘要FreeBSD项目从版本5开始就致力为为多处理器计算系统持续提供可扩展支持。已经取得了足够足够的进展,C类库的malloc(3)内存分配器是运行在多处理器系统的多线程应用的潜在瓶颈。在本文中,我们提供一个新的内存分配器,建立在现有技术的基础上,为应用提供一个可扩展的并发分配。基准测试表明该分配器,对多...翻译 2020-04-25 22:52:26 · 574 阅读 · 0 评论 -
Linux I/O体系之零拷贝
普通I/OLinux常规io读取文件流程用户调用读取文件函数将文件读取至Linux内核页高速缓存将页高速缓存中的数据拷贝至用户内存空间Linux内核将文件从io设备读取至内核高速缓存这个动作是通过DMA(直接内存访问)完成直接内存访问(DMA)在最初PC中CPU是系统中唯一的总线主控器,即CPU是唯一可以驱动内存地址/数据总线的硬件设备。随着更多诸如PCI(Peripheral ...原创 2020-01-12 23:01:55 · 392 阅读 · 0 评论