转自:http://blog.csdn.net/joker0910/article/details/7171626 内核使用了大量不同的宏来标记具有不同作用的函数和数据结构.如宏__init .__devinit 等.这些宏在include/linux/init.h 头文件中定义.编译器通过这些宏可以把代码优化放到合适的内存位置,以减少内存占用和提高内核效率. 下面是一些常用的宏: ·   __init ,标记内核启动时使用的初始化代码,内核启动完成后不再需要.以此标记的代码位于.init.te…
转自:http://blog.csdn.net/edonlii/article/details/8491342/ 在linux编程中,当文件数量变的众多之后,使用gdb调试就是一场灾难.因此在程序中加入合理的打印信息,定位错误出现的文件名,函数名,行号等信息,能更高效的定位到问题的所在. 下面定义了宏,分别是WARNING,INFO,ERROR,SHOW_TIME,DEBUG等.利用了 __FILE__,_FUNCTION__, __LINE__等变量... _FILE__,__FUNCTION…
本文所述是针对 linux 引入了虚拟内存管理机制以后所涉及的知识点.linux 中页缓存的本质就是对于磁盘中的部分数据在内存中保留一定的副本,使得应用程序能够快速的读取到磁盘中相应的数据,并实现不同进程之间的数据共享. 因此,linux 中页缓存的引入主要是为了解决两类重要的问题: 磁盘读写速度较慢(ms 级别); 实现不同进程之间或者同一进程的前后不同部分之间对于数据的共享: 如果没有进程之间的共享机制,那么对于系统中所启动的所有进程,在打开文件的时候都要将需要的数据从磁盘加载进物理内存空间…
经过近两年时间的优化和打磨,Apache ShardingSphere 5.0.0 GA 版终于在本月正式发布,相比于 4.1.1 GA 版,5.0.0 GA 版在内核层面进行了大量的优化.首先,基于可插拔架构对内核进行了全面改造,内核中的各个功能可以任意组合并叠加使用.其次,为了提升 SQL 分布式查询能力,5.0.0 GA 版打造了全新的Federation 执行引擎,来满足用户复杂的业务场景.此外,5.0.0 GA 版在内核功能 API 层面也进行了大量优化,旨在降低用户使用这些功能的成本…
在内核里经常可以看到__init, __devinit这样的语句,这都是在init.h中定义的宏,gcc在编译时会将被修饰的内容放到这些宏所代表的section. 原文地址:http://blog.chinaunix.net/uid-25871104-id-2854544.html 本文地址:http://blog.csdn.net/younger_china/article/details/13755403 1.      定义与用法 典型的定义如下: #define __init      …
转载http://blog.chinaunix.net/uid-7390305-id-2057287.html 看一下/usr/include/asm/linkage.h里面的定义:#define asmlinkage CPP_ASMLINKAGE __attribute__((regparm(0))) 其中 __attribute__是关键字,是gcc的C语言扩展. __attribute__机制是GNU C的一大特色,它可以设置函数属性.变量属性和类型属性等.可以通过它们向编译器提供更多数据…
4.1 typeof 关键字 ANSI C 定义了 sizeof 关键字,用来获取一个变量或数据类型在内存中所占的存储字节数.GNU C 扩展了一个关键字 typeof,用来获取一个变量或表达式的类型.这里使用关键字可能不太合适,因为毕竟 typeof 还没有被写入 C 标准,是 GCC 扩展的一个关键字.为了方便,我们就姑且称之为关键字吧. 通过使用 typeof,我们可以获取一个变量或表达式的类型.所以 typeof 的参数有两种形式:表达式或类型. int i ; ; ​ typeof(i…
Linux下TCP/IP及内核参数优化有多种方式,参数配置得当可以大大提高系统的性能,也可以根据特定场景进行专门的优化,如TIME_WAIT过高,DDOS攻击等等. 如下配置是写在sysctl.conf中,可使用sysctl -p生效,文中附带了一些默认值和中文解释(从网上收集和翻译而来),确有些辛苦,转载请保留链接,谢谢-. 相关参数仅供参考,具体数值还需要根据机器性能,应用场景等实际情况来做更细微调整. net.core.netdev_max_backlog = #该参数决定了,网络设备接收…
声明:本文档来自互联网整理部份加自已实验部份所得: TCP 相关部份   经常使用名词说明: retries(再试).   TCP server <---> client通信状态     SYN---------------->         <--------------SYN,ACK           ACK--------------->                                          建立连接            Data1--…
Tomcat自身的调优是针对conf/server.xml中的几个参数的调优设置.首先是对这几个参数的含义要有深刻而清楚的理解.以tomcat8.5为例,讲解参数. 同时也得认识到一点,tomcat调优也受制于linux内核.linux内核对tcp连接也有几个参数可以调优. 因此我们可以将tomcat调优分为linux内核优化.java虚拟机调优和tomcat自身的优化. 一.Tomcat自身优化 1. maxThreads :tomcat创建的最大线程数,也就是同时处理的请求最大并发数.默认值…