Linux 内存绑定在局部存储器的实现
3.2.1 Linux 内存绑定在局部存储器的实现总体步骤
总体步骤:
l 采用方案三,在在原来分析的基础上,以及已知Linux系统内存的初始化的情况,对内核代码进行修改,主要包括确定新区的范围,建立新区,重新对分配内存的分配机制进行设置。
l 新区划分后,对新建的两个区进行一定程度上的延迟;
l 建立系统调用,系统调用将提供用户进行手动设置访问方式。
l 对内核进行配置,并进行相关调式。
l 用户程序进行最终的测试,并验证相关结论。
3.2.2 Linux 内核绑定在局部存储器代码实现
(一)、修改代码:
1) 在init/main.c这个文件中,在这一段代码
#ifdef CONFIG_X86_LOCAL_APIC
#include <asm/smp.h>
#endif
的下面增加这段代码:
unsigned long max_normal_low_pfn=0;
EXPORT_SYMBOL(max_normal_low_pfn);
这里使用EXPORT_SYMBOL是声明max_normal_low_pfn是全局变量,所有的文件都可以使用,它的用处是为了标记新区ZONE_NORMAL_LOW的最大可用的页框号。
2) arch/x86/kernel/setup.c这个文件:
l 在struct boot_params boot_params;
#endif之后添加,声明该变量已经在别的文件有定义了
extern unsigned long max_normal_low_pfn;
l 在setup_arch()这个函数中,在find_low_pfn_range()这个之后,增加这一句:
max_normal_low_pfn = max_low_pfn/2;
该句用于计算新区(ZONE_NORMAL_LOW)的最大可用页框号。
3) 在arch/x86/mm/init_32.c文件
l 在unsigned long max_low_pfn_mapped; unsigned long max_pfn_mapped;之后添加extern unsigned long max_normal_low_pfn;
l 在static void __init zone_sizes_init(void)这个函数中增加这句代
相关文档:
由于 Linux 良好的用户权限管理体系,病毒往往是 Linux 系统管理员最后才需要考虑的问题。以往,Linux 上的杀毒软件主要是为企业的邮件和文件服务器所设计的。如今,随着 Linux 桌面用户数量的增长,桌面用户在受益于 Linux 系统对病毒较强的天然免疫力的同时,也需要杀毒软件清理从网络或U盘带来的WIndows病毒。尽管那些 ......
pid_t pid=fork()
it has 3 situation for the return result pid
0 child
>0 parent process
<0 fork fail
fork create a new process and it parent live alse when the child process had been created ......
1、直接用export命令:
#export PATH=$PATH:自定义路径
查看是否已经设好,可用命令export查看:
[root@localhost bin]# export
PATH=$PATH:自定义路径
2、修改profile文件:
#vi /etc/profile
在里面加入:
export PATH="$PATH:/opt/au1200_rm/build_tools/bin"
3. 修改.bashrc文件:
# vi /root/. ......
在linux下一些常用的关机/重启命令有shutdown、halt、reboot、及init,它们都可以达到重启系统的目的,但每个命令的内部工作过程是不同的,通过本文的介绍,希望你可以更加灵活的运用各种关机命令。
1.shutdown
shutdown命令安全地将系统关机。 有些用户会使用直接断掉电源的方式来关闭linux,这是十分 ......
3.2.1 Linux 内存绑定在局部存储器的实现总体步骤
总体步骤:
l 采用方案三,在在原来分析的基础上,以及已知Linux系统内存的初始化的情况,对内核代码进行修改,主要包括确定新区的范围,建立新区,重新对分配内存的分配机制进行设置。
l &n ......