- 博客(12)
- 资源 (10)
- 收藏
- 关注
原创 立下2019年的Flag,鞭策自己,使命宣言
0、家庭第一1、坚持运动,跑步2、持续学习,读书、充电2、多做总结,写博客、做笔记3、心向阳光,不制造抱怨、不传递负能量4、保持热爱,将一项爱好进化为特长5、规律作息,早睡早起、戒掉夜宵6、建立保障,完善保险、强制储蓄、适度超前消费7、别怕犯错,怕的是不能吸取教训8、专注于当前的工作,不为下一次任务瞎担心...
2019-01-23 14:40:00 703
转载 GDB 01 -- 调试信息与调试原理
Linux 下 C++ 程序开发,即使使用 makefile、cmake 等编译工具,其最终都是调用 gcc 这一编译工具组的。这里说的工具组,是因为编译 C 程序和 C++ 程序使用的编译工具还是有一点差别的,一般编译 C 程序使用 gcc,编译 C++ 程序使用 g++。(下面为了叙述方便,除非特别说明,否则不做具体区分是 gcc 还是 g++,统一使用 gcc 这一名词代指。)本课程中我...
2019-01-23 14:03:29 949
转载 深入Linux网络核心堆栈--netfilter详解(整理)
https://blog.csdn.net/XscKernel/article/details/8186679 目录1 - 简介 1.1 - 本文涉及的内容 1.2 - 本文不涉及的内容2 - 各种Netfilter hook及其用法 2.1 - Linux内核对数据包的处理 2.2 - Netfilter对IPv4的hook3 - 注册和注销Netfilter h...
2019-01-21 14:36:54 641
转载 (三)洞悉linux下的Netfilter&iptables:内核中的rule,match和target
作为ipchains的后继者,iptables具有更加优越的特性,良好的可扩展功能、更高的安全性以及更加紧凑、工整、规范的代码风格。在2.6的内核中默认维护了三张表(其实是四张,还有一个名为raw的表很少被用到,这里不对其进行分析介绍了):filter过滤表,nat地址转换表和mangle数据包修改表,每张表各司其职。我们对这三张表做一下简要说明:1)、filter...
2019-01-21 14:33:04 254
转载 Linux per-CPU实现分析
217 static DEFINE_PER_CPU(struct runqueue, runqueues);11 #define DEFINE_PER_CPU(type, name) 12 __attribute__((__section__(".data.percpu"))) __typeof__(type) per_cpu__##name13 首先,在arch/i386/...
2019-01-21 11:02:49 275
转载 从著名的list_head看linux内核中OO && 从Unix分层内核栈以及中断处理看Linux内核的另类
如果有人问我最欣赏linux的什么,我会毫不犹豫地回答:list_head。这个小小的结构向世人说明了用c语言写成的linux内核也在实现着OO,下面我就具体来说一下下。先看list_headstruct list_head { struct list_head *next, *prev;};就 这吗?就这!你别看它小,它却可以充当任何在内核中存在的东西,几乎所...
2019-01-15 17:04:30 225
转载 从物理页面的争抢看linux内核内存管理
linux的内核页面是不可换出的,这是事实,但是为什么呢?本文我将从物理页面争抢的角度来试图发现和解决这个疑问。linux的内核地址空间很大一块 是一一映射,这实际上不是必须的,而是内核想尽可能简单的实现内核本身的管理(迎合mmu,人家必须要mmu插手,你内核无法逃避,只好用最简单的方式应 付一下,如果没有mmu,那么对于内核就好了)。 内核毕竟只是为用户进程提供服务,它不应该花很大的精力用...
2019-01-15 16:49:14 243
转载 有关likely和unlikely??
在linux中判断语句经常会看到likely和unlikely,例如:if(likely(value)){}else{}简单从表面上看if(likely(value)) == if(value),if(unlikely(value)) == if(value)。也就是likely和unlikely是一样的,但是实际上执行是不同的,加likely的意识是value的值为真的可能性...
2019-01-15 15:13:24 282
转载 简析Windows Linux的内核映射
linux的内存管理我认为是高效的,windows xp的我认为是豪华的,vista的呢?我认为是无以伦比的(理论是无以伦比,但是实际上不是那样)。 linux把内核的主要数据结构映射到内核空间3g到3g+768的空间内,在系统初始化的时候就将物理内存的前896页映射到内核的3g到3g+896 的地址空间,这内部的内存是一一对应的,而且在进程创建之初,此进程的pgd是在slab分配的,而sl...
2019-01-15 14:51:23 311
转载 系统设计---分层,分级,分块
在设计一个可用的系统时,往往第一步是设计结构。纵观计算机的发展史,横贯计算机科学的不同领域,有三个方法是很重要的,那就是:分层,分级,分块的思想方法。记得上高中的时候,我们的物理老师老隔就给我们传授动态的测试方法,当时我们设计一个电路,老隔就给我们讲,要想知道设计方案如何,最好的方法就是“让电 流流一流”,现在工作了,终于明白了这是真的,为了说明问题,关键时刻就让“数据流一流”吧。另外说一下策...
2019-01-15 14:36:15 682
转载 线程?进程?-----该停下来思考一下了
多线程,当今在IT圈子内部最普遍的概念。有多少人理解它的实质,它的精髓?(我不甚懂,这篇文章只是在使劲往前冲的时候让我停下了,吃点有营养的东西,然后继续冲)甚至在多线程还没有完全吃透的情况下,现在又冒出了什么并行计算,网格,云等等......做技术应该迷恋技术,但不应该迷信技术!要吃透它,上升到理论的高度!在计算机时代早期,只有任务,后来有了批处理,但是本质上还是一个任务,后来为了更加密集...
2019-01-15 14:10:54 211
原创 【python入门到实践1】简介和环境搭建
Python 最大的特点是什么,我会毫不犹豫的告诉他:简单易学,功能强大。作为一款纯粹的自由软件,Python 有很多优点简单,基于“优雅”、“明确”、“简单”的设计哲学,Python 设计时尽量使用其它语言经常使用的标识符号和英文单词,优秀的 Python 程序具有如同英文般的易读性,这使得学习 Python 变得容易; 高级,Python 是一种高层次的编程语言,与 Java,C/C+...
2019-01-03 23:54:39 148
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人