NAT(NetworkAddressTranslation,网络地址转换)是将IP数据包头中的IP地址转换为另一个IP地址的过程。在实际应用中,NAT主要用于实现私有网络访问公共网络的功能。这种通过使用少量的公有IP地址代表较多的私有IP地址的方式,将有助于减缓可用IP地址空间的枯竭。NAT有三种方式..
分类:
其他好文 时间:
2014-07-26 03:29:07
阅读次数:
283
下面将讲解进程间通信的另一种方式,使用共享内存。一、什么是共享内存顾名思义,共享内存就是允许两个不相关的进程访问同一个逻辑内存。共享内存是在两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常安排为同一段物理内存。进程可以将同一段共享内存连接到它们自己的地址空间中,所...
分类:
系统相关 时间:
2014-07-24 14:40:05
阅读次数:
384
Windows进程 1 Windows进程 进程是一个容器,包含了一个应用程序实例的各种资源。Windows多任务的操作系统,因此可以同时执行多个进程。 2 Windows进程的一些特点 2.1 进程中包含了执行代码等资源。 2.2 进程都具有私有的地址空间。 2.3 每个进程都有一个ID,标识进程。 2.4 每个进程都有自己的安全属性 2.5 至少...
一、线程的应用与特点 多线程是程序员不可或缺的技术能力,多线程技术在各个方面都有应用,特别在性能优化上更是起到至关重要的作用。但是,如果多线程写得不好,往往会适得其反,特别是高并发时会造成阻塞、超时等现象。多线程具有以下特点:1、独立性,拥有自己独立的资源,拥有自己私有的地址空间;2、动态性,...
分类:
编程语言 时间:
2014-07-22 22:37:52
阅读次数:
275
1、演示内容文件复制2、提要复制大文件时,使用FILE_FLAG_NO_BUFFERING标志同时需要注意:读写文件的偏移地址为 磁盘扇区 的整数倍读写文件的字节数为 磁盘扇区 的整数倍读文件到的缓冲区在进程地址空间中的地址为 磁盘扇区 的整数倍3、JUST CODING#include "stda...
内存管理
--内存管理基础
一、 内存管理概念
1.存储管理的功能
(1)内存空间的分配与回收,包括内存的分配和共享。
(2)地址转换:内存管理配合硬件进行地址转换,把逻辑地址转换成物理地址。
(3)内存空间的扩充:借助于虚拟存储器或交换覆盖技术来达到扩充内存容量的目的。
(4)存储保护:为了避免相互干扰和破坏,必须提供保护功能。
2.地址重定位[程序的装入]
(1)逻辑地址空间
(2)物理地址空间
(3)地址重定位
(4)重定位类型
地址重定位分为静态重定位和动态...
分类:
其他好文 时间:
2014-07-19 23:32:09
阅读次数:
469
需要本文代码请直接跳到文章最底部下载
注入进程的方法有很多,本文主要介绍通过远程线程来注入进程的方法;
我们知道,每个进程都有4GB的地址空间,windows可用的大小大概为1.5GB左右,远程线程注入的方法主要是,打开一个线程以后,将要注入的动态库的地址写入这个地址空间,然后调用开启远程线程的函数,来执行LoadLibraryA或者LoadLibraryW(其实不存在LoadLibrar...
分类:
编程语言 时间:
2014-07-19 23:19:51
阅读次数:
449
题目线程和进程的区别是什么?解答这是一道出现频率极高的面试题,考察基本概念。进程可以认为是程序执行时的一个实例。进程是系统进行资源分配的独立实体, 且每个进程拥有独立的地址空间。一个进程无法直接访问另一个进程的变量和数据结构, 如果希望让一个进程访问另一个进程的资源,需要使用进程间通信,比如:管道,...
分类:
编程语言 时间:
2014-07-19 11:28:26
阅读次数:
210
一、交换分区:swap目前几乎所有的操作系统都是多任务多用户的,且使用了MMU完成了内存保护,以使得多进程得以完成。如此一来,每个进程都有自己的线性地址空间,其中的数据会被映射到物理地址空间中。第一个进程使用第一个线性地址空间,第二个进程使用第二个线性地址空间,依..
分类:
其他好文 时间:
2014-07-19 02:26:36
阅读次数:
485
简单的说:kmalloc和vmalloc是分配的是内核的内存,malloc分配的是用户的内存kmalloc保证分配的内存在物理上是连续的,vmalloc保证的是在虚拟地址空间上的连续,malloc不保证任何东西(这点是自己猜测的,不一定正确) kmalloc能分配的大小有限,vmalloc和mall...
分类:
其他好文 时间:
2014-07-16 17:42:57
阅读次数:
195