由于微软修改了SQL Server的收费策略(之前是按CPU数收钱,现在是按CPU核数收钱),导致公司每年要多多一百万美元的支出,老板阿牛觉得这样很不值,决定转向开源免费的MySQL,虽然用的也是收费版本,但是所需要的费用就要少很多了。于是乎,公司一群.net程序员开始了苦逼的迁移工作。下面是我在迁...
分类:
数据库 时间:
2014-07-10 13:12:30
阅读次数:
232
大多数网站的性能瓶颈不在PHP服务器上,因为它可以简单地通过横向增加服务器或CPU核数来轻松应对(对于各种云主机,增加VPS或CPU核数就更方便了,直接以备份镜像增加VPS,连操作系统、环境都不用安装配置),而是在于MySQL数据库。如果用 MySQL 数据库,一条联合查询的SQL,也许就可以处理完...
分类:
编程语言 时间:
2014-06-27 00:19:14
阅读次数:
311
本文由该问题引入到内核锁的讨论,归纳例如以下为什么须要内核锁?多核处理器下,会存在多个进程处于内核态的情况,而在内核态下,进程是能够訪问全部内核数据的,因此要对共享数据进行保护,即相互排斥处理有哪些内核锁机制?(1)原子操作atomic_t数据类型,atomic_inc(atomic_t *v)将v...
分类:
其他好文 时间:
2014-06-18 16:11:05
阅读次数:
224
我个人比较喜欢学习数据结构,而Linux内核中实现的数据结构会是我们去学习、理解和应用数据结构的一个很好途径。这里介绍内核中广泛应用的四种数据结构:链表、队列、映射和二叉树。
链表:
Linux内核讲求高效精简,所以有时需要我们动态去创建和分配内存,这时就要借助链表,我们根据实际情况分配内存后,只需修改链表的指针,仍能索引到刚分配的内存区。链表分单向链表、双向链表和循环链表。...
分类:
系统相关 时间:
2014-06-15 15:19:43
阅读次数:
343
【版权声明:转载请保留出处:blog.csdn.net/gentleliu。邮箱:shallnew*163.com】网卡驱动为每一个新的接口在一个全局的网络设备列表里插入一个数据结构.每一个接口由一个结构 net_device 项来描写叙述, 它在 里定义。该结构必须动态分配。进行这样的分配的内核....
分类:
系统相关 时间:
2014-06-14 21:44:13
阅读次数:
398
主配置文件(nginx.conf):usernginxnginx; #运行用户worker_processes8; #启动进程数,一般等于CPU的总核数或两倍,太多会占用CPU增高。error_log/tol/app/nginx/logs/nginx_error.logcrit; #定义错误日志文件及级别,有[debug|info|notice|warn|error|crit]pid/tol/app/nginx/lo..
分类:
其他好文 时间:
2014-06-08 02:31:34
阅读次数:
320
proc为一个内核数据结构接口,用户空间和内核空间可以通过该接口通信,
与普通文件不同的是,这些虚拟文件的内容都是动态创建的。
proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间。
它以文件系统的方式为访问系统内核数据的操作提供接口。用户和应用程序
可以通过 proc得到系统的信息,并可以改变内核的某些参数。
proc
文件系统可以被用于收集有用的关于系统和运行中的内...
分类:
系统相关 时间:
2014-06-02 12:37:22
阅读次数:
388
每个cpu都有队列来处理接收到的帧,都有其数据结构来处理入口和出口流量,因此,不同cpu之间没有必要使用上锁机制,。此队列数据结构为softnet_data(定义在include/linux/netdevice.h中):
/*
* Incoming packets are placed on per-cpu queues so that
* no locking is needed....
分类:
系统相关 时间:
2014-05-23 07:29:17
阅读次数:
514
【版权声明:转载请保留出处:blog.csdn.net/gentleliu。邮箱:shallnew*163.com】
内核在处理2层数据包之前,必须先处理中断系统,设立中断系统,才有可能每秒处理成千的帧。
当收到一个帧时,驱动程序会代表内核指示设备产生一个硬件中断,内核将中断其他的活动,然后调用一个驱动程序所注册的处理函数,以满足设备的需要。当事件是接收到一个帧时,处理函数...
分类:
系统相关 时间:
2014-05-14 20:12:37
阅读次数:
498
网卡驱动为每个新的接口在一个全局的网络设备列表里插入一个数据结构.每个接口由一个结构 net_device 项来描述, 它在 里定义.每一个接口必须动态分配内存。...
分类:
系统相关 时间:
2014-05-14 19:48:00
阅读次数:
417