上一页 1 ··· 54 55 56 57 58 59 60 61 62 ··· 70 下一页
摘要: 转自:http://pengpeng.iteye.com/blog/8755210. 内存基本知识 我们通常称 linux的内存子系统为:虚拟内存子系统(virtual memory system),为何这样称谓呢? 其实这个是个很牛的设计。linux充分利用了程序的局部性原理,结合线性地址的概念(虚拟地址)使得运行于操作系统上的每个进程都可以使用所有用户空间主存。而且虚拟内存还解决了内存不连续和碎片的问题(因为在程序来说线性地址都是连续的);每个进程都有各自的页表,虚拟地址空间都各自独立,互补干扰; 那么我们的程序里申请的内存的时候,linux内核其实只分配一个虚拟内存(线性地址),并没有分 阅读全文
posted @ 2013-06-23 19:01 myLittleGarden 阅读(1206) 评论(0) 推荐(0)
摘要: 转自:http://pengpeng.iteye.com/blog/868643 从上篇文章的介绍我们知道linux内核根据TCP/IP网络模型,给我们隐藏了传输层以下的网络传输细节,我们的网络应用程序只需要针对socket编程即可。这篇我们立足网络数据包的I/O。谈谈linux的一些I/O知识。1. 基础知识 我们知道Linux的内核将所有外部设备都可以看做一个文件来操作。那么我们对与外部设备的操作都可以看做对文件进行操作。我们对一个文件的读写,都通过调用内核提供的系统调用;内核给我们返回一个file descriptor(简称:fd,文件描述符);我们通过 ls -l /proc/${p. 阅读全文
posted @ 2013-06-23 19:00 myLittleGarden 阅读(635) 评论(0) 推荐(0)
摘要: 转自:http://pengpeng.iteye.com/blog/875520 本篇从基于TCP/IP协议出发,探讨现代流行的应对高并发请求网络服务端设计架构; 首先回顾一下TCP/IP模型,并知道各个层次在操作系统的哪一个层次; 看上图,OSI模型的底下两层是随系统提供的设备驱动程序和网络硬件。 阅读全文
posted @ 2013-06-23 18:44 myLittleGarden 阅读(354) 评论(0) 推荐(0)
摘要: 每天都过的很快,好像起床以后忙活几下,又到了晚上,很快又要睡觉了。To-do-list上的事好像总是做不完,有的时候积压地太多以至于都不想去碰了。每天从早到晚都是忙碌状态,但是总觉得做不了几件事,要是给我1天48小时该多好。事情太多时间不够,但是睡少了又效率低下,这实在是个悖论。似乎很多牛人都可以睡的很少,每天4-5小时睡眠,或者间歇式的睡眠,就可以高效地做事。这个境界我总是达不到,也没有想去达到。少睡不是长久之计,关键还是要高效地管理时间。我今天和一个朋友请教了这个问题,很受启发。我朋友是卡内基梅陇大学的计算机在读博士,发表了好几篇顶级论文,科研做的很牛。除学术以外,他还忙活不少其他 的事, 阅读全文
posted @ 2013-06-22 22:02 myLittleGarden 阅读(249) 评论(0) 推荐(0)
摘要: 1. 背景知识随着个人电脑、移动终端、乃至物联网的不断发展,有很大的IP地址需求。由于IPv4协议设计时没有料到日后网络会如此发达,IPv4网络中的IP数量相对今天的需求来说,显得捉襟见肘。加上IPv4地址资源分配得不平均,造成部分国家的IP地址资源非常紧张,将压抑需求旺盛的互联网的发展。虽然NAT技术的出现在较大程度上缓解了IPv4资源紧张的问题,但使用地址资源更为丰富的IPv6网络仍是大势所趋。由于IPv6协议与IPv4协议的数据包头不一致,使得原有的能解析IPv4数据包的设备不能很好地解析IPv6数据包,从而造成IPv4网络与IPv6网络不能互通。IPv6网络与IPv4网络的不可兼容,给 阅读全文
posted @ 2013-06-20 19:34 myLittleGarden 阅读(26454) 评论(0) 推荐(0)
上一页 1 ··· 54 55 56 57 58 59 60 61 62 ··· 70 下一页