OS
文章平均质量分 58
mtOS1573
这个作者很懒,什么都没留下…
展开
-
linux内核numa简单的bitmap操作
nodemask_t存放的是有关节点的配置信息。定义如下typedef struct { DECLARE_BITMAP(bits, MAX_NUMNODES); } nodemask_t;DECLARE_BITMAP定义如下#define DECLARE_BITMAP(name,bits) \ unsigned long name[BITS_TO_LONGS(bits)]-----------------------------------------------------...原创 2021-11-25 16:57:51 · 593 阅读 · 0 评论 -
Linux启动时的页表映射
内核启动时进行内存映射,map_mem()->create_mapping()内核支持4级映射(PGD->PUD->PMD->PTE) ,支持的level由宏CONFIG_PGTABLE_LEVELS定义,目前为3级映射,也即PGD->PMD->PTE从下图可以知道,每级页表分别使用虚拟地址的9位作为索引,也即每级页表大小为512. 虚拟地址最后12bit作为页内索引.从而表示一个具体的物理地址页表,虚拟地址,物理地址关系一、前..原创 2021-10-20 17:32:42 · 666 阅读 · 0 评论 -
centos8忘记密码解决方法(非救援模式)
1.重启centos8,在这个界面按上下键选中第一行2.按’e’键,进入如下界面,移动向下方向键至“linux16”开头的行。然后按向右的方向键移动,找到“ro”并将其修改为“rw init=/sysroot/bin/bash”。(rw后边有空格,\是系统自己添加的)------------------------------------------------------------------------------------------------------------------原创 2021-10-20 12:08:13 · 681 阅读 · 1 评论 -
深入理解linux内存管理之 页表管理
页表是内存管理系统中的数据结构,用于向每个进程提供一致的虚拟地址空间,每个页表项保存的是虚拟地址到物理地址的映射以及一些管理标志。应用进程只能访问虚拟地址,内核必须借助页表和硬件把虚拟地址翻译为对物理地址的访问。页表作用在使用虚拟地址空间的linux操作系统上,每一个进程都工作在一个4G的地址空间上,其中0~3G是应用进程可以访问的user地址空间,是这个进程独有的,其他进程看不到也无法操作这个地址空间;3G~4G是kernel地址空间,所有进程共享这部分地址空间。由于每个进程都有3G的私有进程原创 2021-10-19 16:56:08 · 1221 阅读 · 0 评论 -
内存管理源码分析-内核页表的创建以及索引方式(基于ARM64以及4级页表)
页表的主要作用是完成虚拟地址到物理地址的转换,更详细的介绍可以参考这个优秀的博客,很好地介绍了页表的理论。Linux如何实现这个页表理论呢?以及如何进行寻址呢?本文将会结合代码,从代码出发,基于ARM64的架构,分析Linux从源码上如何实现页表理论。从一个页的地址说起对于ARM64的架构,一个虚拟地址的大小是64bit。但是实际上并不是全部64bit都是用来寻址的,其中一部分bit会基于架构的不同有一样的作用,但是一个最基本的应用是区分当前地址是用户态和内核态的地址。内核可以通过宏CONFIG_A原创 2021-10-19 16:51:15 · 645 阅读 · 0 评论 -
build centos 8.2 kernel and download some packages
http://rpmfind.net/linux/centos/8-stream/PowerTools/aarch64/os/Packages/dwarves-1.19-1.el8.aarch64.rpmhttps://vault.centos.org/8.2.2004/BaseOS/Source/SPackages/elfutils-0.178-7.el8.src.rpmhttps://vault.centos.org/8.2.2004/BaseOS/Source/SPackages/libbpf-0原创 2021-01-23 16:04:38 · 338 阅读 · 0 评论 -
CentOS SRPMS link
https://vault.centos.org/8.2.2004/AppStream/Source/SPackages/原创 2021-01-18 19:16:12 · 114 阅读 · 0 评论 -
服务器登录出现Host key verification failed
ssh root@192.168.23.103@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY...原创 2021-01-18 19:15:13 · 149 阅读 · 0 评论 -
CentOS 8.2 Ererything aarcch64 开机启动后图形界面显示不正常(花屏)
安装时候注意要配置好网络,提供第三台机器登录到这台服务器root登录后,vi vim编辑软件编辑 /etc/gdm/custom.conf找到 #WaylandEnable=false 改为WaylandEnable=false 保存重启即可# GDM configuration storage[daemon]# Uncoment the line below to force the login screen to use XorgWaylandEnable=fal...原创 2021-01-18 19:12:56 · 837 阅读 · 1 评论 -
Linux内核编译及CentOS系统安装
1、程序包的编译安装命令:./configure, make, make install(1)./configure:检查编译环境的依赖关系,并设置编译参数;(2)make:编译过程,make不是编译工具,而是项目构建工具,其调用各所需的编译工具执行编译操作;(3)make install:把编译好的文件(文件包括:二进制文件、库文件、帮助文档、配置文件)复制到编译时指定目录下。前提:准备好开发环境(开发工具,开发库),安装后的头文件放置在/usr/include。开源软件提供的是软件的源代码原创 2021-01-05 19:01:17 · 231 阅读 · 0 评论 -
build your own linux os kernel
https://wiki.centos.org/zh/HowTos/BuildingKernelModules 本教学文档以 CentOS-5 作为样例操作系统。在某些情况下你也许会需要更改或创建一个新的内核模块。也许你要加入某个功能,或者只是做一个修正。在这件教学文档内,我们会尝试将一个错误修正加进现有的模块内,然后安装它。这里假设你已经安装了整个内核的源代码。如果你是按照「我需要内核的源代码」的第 2 部份,它会位於 ~/rpmbuild/BUILD/kernel-3.10.0/li..转载 2021-01-03 19:22:10 · 1183 阅读 · 0 评论 -
修改权限的chmod命令使用方法
一、Linux权限简介 Linux认为有三组用户会使用文件或目录,即实际拥有者(也称文件的用户User,缩写u)、用户组(Group,缩写g)和系统中的其他人(Other,缩写o)。 用户对文件和目录的常用操作属性有三种:读(r)、写(w)和执行(x)。 1、读(r): 对文件:可以查看; 对目录:可以使用ls命令列出其内容。 2、写(w原创 2016-01-03 15:43:42 · 4495 阅读 · 0 评论 -
MacBook 启动/禁用翻盖自动开关机
从 2016 新款 MacBook Pro 起,预设打开笔电上盖或连接电源供应器时,电脑就会自动开机而且开机时没有启动声,本文教你如何将这些东西调整回原本的样子。以下指令都是通过「应用程序」→「终端」来达成。取消自动开机:sudo nvram AutoBoot=%00重新启用自动开机:sudo nvram AutoBoot=%03开启开机音效:原创 2017-11-29 20:53:34 · 23353 阅读 · 0 评论 -
Linux高可用(HA)集群之Pacemaker详解
一、pacemaker 是什么 二、pacemaker 特点 三、pacemaker 软件包供应商 四、pacemaker 版本信息 五、pacemaker 配置案例 六、pacemaker 支持集群架构 七、pacemaker 内部结构 八、pacemaker 源代码组成 九、 一、pacemaker 是什么 二、pacemaker 特点 三、pacemaker ...原创 2019-04-13 12:32:49 · 4114 阅读 · 0 评论 -
corosync+pacemaker使用crmsh构建高可用集群
一、集群简介引自suse官方关于corosync的高可用集群的框架图: 由图,我们可以看到,suse官方将集群的Architecture Layers分成四层。最低层Messaging/Infrastructure Layer提供了HeartBeat节点间传递心跳信息,即为心跳层。第二层Membership Layer层为集群事务决策层,决定了哪些节点作为集群节点,并传...原创 2019-04-17 16:57:21 · 565 阅读 · 0 评论 -
Linux 查看CPU信息、机器型号等硬件信息
查看CPU信息(型号)# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c 8 Intel(R) Xeon(R) CPU E5410 @ 2.33GHz(看到有8个逻辑CPU, 也知道了CPU型号)# cat /proc/cpuinfo | grep physical | uniq -c...原创 2019-04-23 17:00:49 · 684 阅读 · 0 评论 -
龙芯平台构建软件automake m4 autoconf 参数使用方法
1、configure: error: cannot guess build type; you must specify one解决方法UNAME_MACHINE = i686UNAME_RELEASE = 4.4.0-31-genericUNAME_SYSTEM = LinuxUNAME_VERSION = #50~14.04.1-Ubuntu SMP Wed Jul 13 01:...原创 2019-04-28 15:09:08 · 534 阅读 · 0 评论 -
SSH无密码登录:只需两个简单步骤 (Linux)
如果你管理一台Linux服务器,那么你就会知道每次SSH登录时或者使用scp复制文件时都要输入密码是一个多么繁琐的过程.这篇教程介绍使用SSH Key来实现SSH无密码登录,而且使用scp复制文件时也不需要再输入密码.除了方便SSH登录,scp复制文件外,SSH无密码登录也为Linux服务器增加了又一道安全防线.SSH无密码登录的设置步骤首先我们在自己的Linux系统上生成一对SSH Ke...原创 2019-05-05 17:31:05 · 25340 阅读 · 1 评论 -
macbook pro 废纸篓无法使用,删除文件时都变成直接删除
这种情况一般是一些骚操作导致的~./Trash文件夹丢失,或者是丢失了这个文件夹的读写权限;这个时候我们可以先查看~./Trash这个文件夹;查看隐藏文件先在终端中输入defaults write com.apple.finder AppleShowAllFiles -bool true;然后command+option+esc重启finder,这时候你会发现系统中展示出了许多...原创 2019-07-02 09:05:26 · 4359 阅读 · 9 评论 -
Linux Redhat 一般用户不能执行sudo问题的解决办法
在Redhat下,一般用户执行sudo命令时,系统会报出”isnot in the sudoers file. This incident will bereported”这样的错误。原因是Redhat在建立用户时并没有把用户自动加入到sudo用户列表中。 先从管理员那里要到root权限,然后查找一下sudoers文件存放在哪里。敲击命令: whereis sudoer原创 2014-10-05 21:43:01 · 4167 阅读 · 0 评论