• php栈和队列

    php 里面没有栈和队列 的数据结构,但是可以通过数组来模拟,  array_push  数组末尾增加一个元素  array_pop  数组末尾删除一个元素  array_shift  数组头...

    假象爛情人 2017-09-28 22:20:19阅读:237
  • 计算机的启动-从设计一个主板开始

    计算机是怎么启动的呢?这是一个问题。操作系统是怎么操作硬件的呢?这是又是一个问题。编址是怎么回事,这当然也是一个问题。我们通过设计一个简单的主板来理解这一切。 首先我们看一下编址,所谓的编址有一...

    彼岸尋花 2011-03-19 20:13:00阅读:3447
  • 指针和定长数组

    数组就是指针这个说法并不正确,只能说数组的名字是一个指针,指向数组的第一个元素,而数组的内容是该指针指向的内存后面连续的一段内存,这些内存可以用指针来寻址。重要的特点是“连续的一段内存”,因此数组...

    你給的忽略 2011-02-12 12:21:00阅读:3684
  • 一个资源管理系统的设计--基于cgroup机制

    设计一个资源管理系统对于一个综合性的资源访问系统来说是十分必要的,而好的设计一定是不复杂的,甚至说是十分简单的,原因就是精简机构,消除冗余,或者说精兵简政在任何时候任何方面总是必要的,我们不希望管...

    青春的滋味 2010-11-03 20:38:00阅读:3465
  • linux内核网络实现的一些问题

    1.“也就是说,余下的包不会再通过这个表,一个一个的被NAT,而是自动地完成。这就是我们为什么不应该在这个表中做任何过滤的主要原因”这段话说明不能在nat规则中作过滤,因为linux的链接跟踪机制...

    旧人勿恋 2010-09-28 23:22:00阅读:3251
  • linux的流量控制

    ip命令在linux上实现绝大部分专业路由器上实现的一部分功能,另一个命令tc实现了专业路由器上实现的几乎另一部分功能,而iptable一来,剩余的功能它就全包了,如果再加运行一个zebra的话,...

    腾龙D哥 2010-08-31 21:26:00阅读:6943
  • 文件系统--procfs中进程目录的问题

    procfs是一个特殊的文件系统,和sysfs一样,它是一个只有在你看的时候才会存在的文件系统,它们一样都是用来进行内核-用户态通信的,它们和netlink或者syscall的区别在于它们是文件的...

    懵懵懂懂小清新 2010-08-18 22:47:00阅读:2550
  • 实现一个简单的反向NAT并引申一个web请求内容过滤

    如果不懂NAT怎么办,其实NAT基本谁都懂,关键是如果不懂配置怎么办,不精通iptables怎么办?幸亏我们玩的是linux内核,我们完全可以自己写一个简单的NAT,通过一个简单的思想就能实现一...

    想待在角落 2010-02-09 22:33:00阅读:3307
  • 木马程序的信息存储位置

    将信息置于目前不使用的扩展字段或者在不和当前信息冲突的前提下将信息“挤”进当前字段,正如current->flags可以重用一样,比如,如果标准内核中已经定义个若干flag标志,比如run...

    小娘年少不无知 2010-02-09 22:31:00阅读:1881
  • linux底层内存管理--内核空间的伙伴系统

    linux内核的伙伴算法最大限度的减少了内存的碎片,其实应该说成是尽自己最大的努力减少了内存 的碎片。其思想就是将物理内存分成10个链表,每一个链表的元素代表一系列的连续页面,连续页面的数量随链表...

    浮生如斯 2010-02-09 22:28:00阅读:3230
  • /dev/initctl怎么玩

    /dev/initctl是一个管道文件,很多人知道它,但是知道怎么用。要想知道怎么用还是得看init程序的源代码,在init.c中就用到了 /dev/initctl管道文件。可以通过/dev/in...

    半醉半醒半想你 2010-02-09 22:13:00阅读:7242
  • windows和linux的内存管理

    windows的内存管理很是严谨,使用内存必须首先分配,当然每个操作系统都是这样,然而windows的严谨在于分配的过程,分为保留和提交两个阶段,其中保留的含义就是在进程的虚拟地址空间保留一块空...

    视你如命 2010-02-09 22:10:00阅读:3954
  • 读《毛德操:关于进程挂靠》

    WINDOWS 可以创建远程线程,但是linux却不可以,为何?windows是基于对象的,是异步的,在很多情况下都没有进程上下文,试想一下,windows实际 上就像一个超大容器,里面有形形色...

    执着的疯子 2010-02-09 22:06:00阅读:3862
  • 通过IRQL看NT内核

    linux强调的是进程自主性,windows则是对象自主性,其中线程本身也是一个对象,进程也是,所以一个进程可以操作另外一个进程的地址空间也就不足为奇了,windows的通信实际上是对象间通信,...

    早知是梦 2010-02-09 22:05:00阅读:2659
  • 2.6内核新引入的反向映射

    (本文基于2.6.1内核,参考2.6.9内核)反向映射是2.6内核中新引入的一个机制,主要是为了加速页面置换的时候的效率,由于内核中的页面是不区分进程的,多个进程很有可能会共享一个页面,内核只管...

    苟不言笑 2010-02-09 22:01:00阅读:3752
  • linux内核网络协议栈实现中的几个问题

    1.关于sk_buff的链表组织 sk_buff 的next和prev指针用来将sk_buff连接成链表,但是具体哪些skb被连接在一起就要看当前的skb在哪一个层次了,并且skb中还有一个...

    牽強的扯著笑 2010-02-09 22:01:00阅读:3191
  • 从ip addr add和ifconfig的区别看linux网卡ip地址的结构

    今天一个老外在邮件列表上问了一个问题,就是ip addr add和ifconfig的区别,我给他进行了解答,可能因为英语不好吧,解答的很简单,因此我还是要在这里详细说明一下。其实它们之间没有什么...

    梦幻之冰 2010-02-09 21:49:00阅读:61743
  • 数字化和模拟化—信息论系列

    总是听到有人拿数字系统和模拟系统做对比,其实二者根本就不是一个层次的,模拟化会更加全面一些,它在努力重现一些事实,并且在某种程度上力图达到效果的一致,比如模拟放音机,它就是用来试图重现声音的,其...

    回忆在沉淀 2010-02-09 21:31:00阅读:1816
  • 差异备份的一个实现--总论和数据结构

    我在我们的猎鹰产品中完成了一个边角料的独立模块,就是差异备份的实现,其实起初我不太赞成做这个模块,因为开源的程序多得是,都是关于备份的,然后总工非要做不可,人在屋檐下不能不低头啊,我还是很不爽的...

    脆弱的心 2010-02-09 21:26:00阅读:1921
  • netfilter数据结构设计的艺术

    netfilter较以前的ipchains提升了一个层次,在ipchains的东西中抽象出来共性的东 西然后形成了一个框架,从ipchains到netfilter的发展展现了软件发展的数据不断抽...

    闹点小情绪 2010-02-09 21:23:00阅读:2246
  • linux内核的nfs实现框架

    linux内核中实现了nfs,nfs具体是用rpc来实现的,于是linux内核实现了rpc,rpc到底是什么,以及协议细节本文不讨论,网上书上多的是,包括协议编码规范也不说,本文仅仅描述一下li...

    本皇只要你 2010-02-09 21:14:00阅读:3249
  • openssl的互斥回调机制

    很不幸,openssl的底层实现不是线程安全的,虽然我可以通过我自己实现的锁来安全的在不同的线程中使用同一个 ssl连接,也就是一个ssl指针可以在多个线程中共用,但是我们能看到的最底层也就是这个...

    抽烟只为消除心中的痛 2010-02-09 21:01:00阅读:4077
  • 我学编程

    自从写第一个程序到现在已经三四个年头了,我一开始就学java,至于c语言是我后来自学的,几乎没有怎么系统的学习过,就是读人家的原代码,然后自己比划比划,就这么过了三四年。 在我的学习经历中,我...

    没有樱桃的丸子 2010-02-09 20:46:00阅读:2508
  • 从虚拟存储器联想的一系列有趣的事

    本文是一篇漫谈,不一定都和虚拟存储相关,我只不过从虚拟存储器联想到一些事情,进而随便写写。 总听论坛上的一些朋友问什么哈希表和搜索树那个效率高的问题,其实这个问题根本没有意义,你就看linux...

    真心无限期 2010-02-09 20:45:00阅读:1787
  • 链表的设计--单链表逆序开始

    这个问题仅仅可以考察人们对c语言特别是指针的熟悉程度,在实际编程中没有任何的意义,单链表逆序无论如何都要花费大量的时间,如果非要这么做为何不用空间来换时间,比如用双链表,然而如果你使用了双链表的...

    粉色味蕾的悲伤 2010-02-09 20:42:00阅读:3454
  • 堆,AVL树,红黑树以及优先级队列

    声明:本文完全没有定量分析,需要定量分析的,请随便查阅一本数据结构的书籍或网页。 二叉堆:拥有删除最大(小)权值节点以及插入任意节点操作,是一颗完全二叉树,其完全性由插入和删除动作来保证。...

    闹点小情绪 2010-02-09 20:38:00阅读:3853
  • 指针的意义和linux的内存回收艺术

    linux的内存回收机制设计得简直是一种艺术,精通c语言的不一定不会把c语言玩得导致内存泄漏,精通java的虽然再也不用玩指针了,那也不能完全相信java的内存回收机制,毕竟一个java程序出事...

    心动才会心痛 2010-02-09 20:35:00阅读:2773
  • linux内核的syslets补丁

    linux的系统调用及其丰富,但是却都是同步的,虽然2.6内核新增加了异步io,但是对于套接字等却以及非直接读写io却不可用,于是开发者就有了一 个想法,既然一些任务可以由内核的xxlet或者内...

    无地自容 2010-02-09 20:29:00阅读:1511
  • tlb刷新的懒惰模式

    tlb是一种缓存,缓存的内容是虚拟地址和物理页面的对应关系,每当一个新进程投入运行的时候,tlb就要被刷新,否则就会出现混乱,但是因为linux 的所有进程的内核部分的页面映射是一样的,而且内核线...

    农民范 2010-02-09 20:28:00阅读:3520
  • linux内核中的内存分配睡眠问题

    在linux内核当中,分配内存是常有的事情,许多的内核数据结构都需要动态建立,这就需要分配内存,如果当下没有可用内存的话,内存分配函数是返回 NULL,还是睡眠等待呢?这其实是两种策略,答案也是...

    幸福_持有者 2010-02-09 20:26:00阅读:2579
搜索
文章归档