Mark~J的博客

如果心是近的,再远的路也是短的。如果开心是蜜做的,再苦的海水都是甜的! ——佳期茹梦...

蚁群算法

蚁群算法自话蚁群算法这算是填3年前的一个坑吧,已经懒癌晚期了,想必也还是要挣扎下,那今天先从蚁群算法这个坑说起,如果你是要寻找怎么优化蚁群算法,可以直接跳过本文,如果你还不了解什么是蚁群算法,或许本文能够提起你的兴趣。如果你同样对遗传算法和粒子群算法感兴趣,请查看3年前我对于这两个算法见解的文章。...

2018-01-19 11:27:40

阅读数 358

评论数 0

Linux的用户和组的管理

Linux的用户和用户组管理 Linux是个多用户多任务的分时操作系统,所有一个要使用系统资源的用户都必须先向系统管理员申请一个账号,然后以这个账号的身份进入系统。用户的账号一方面能帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也能帮助用户组织文件,并为用户提供...

2017-12-25 10:25:47

阅读数 2993

评论数 0

深入理解GRASP

GRASP,全称为General Responsibility Assignment Software Pattern,即通用职责分配软件模式,它由《UML和模式应用》(Applying UML and Patterns)一书作者Craig Larman提出。与其将它们称之为设计模式,不如...

2017-11-01 20:23:42

阅读数 425

评论数 0

UT、IT、ST、UAT

软件开发中的完成测试环境所包括的环节包括:UT、IT、ST、UATUT = Unit Test 单元测试IT = System Integration Test 集成测试ST = System Test 系统测试UAT = User Acceptance Test 用户接受测试(俗称:验收测试)U...

2017-07-10 10:55:55

阅读数 1124

评论数 0

初识标准库类型vector

vector 是同一种类型的对象的集合,类似于数组,每个对象都有一个对应的整数索引值。 它和 string 对象一样,系统将负责管理与存储元素相关的内存。 我们把 vector称为容器,是因为它可以包含其他对象。一个容器中的所有对象都必须是同一种类型的。   使用 vector 之前,必须包含相应...

2017-03-13 11:01:14

阅读数 211

评论数 0

进程的创建

进程的创建也就有两种方式:一是由操作系统创建,二是由父进程创建。 在系统启动时,操作系统会创建一些进程,他们承担着管理和分配系统资源的任务,这些进程通常被称为系统进程。 系统允许一个进程创建新进程,新进程即为子进程,子进程还可以创建新的子进程,形成进程树结构。整个Linux系统的所有进...

2016-10-07 10:08:11

阅读数 405

评论数 0

linux内存管理之slab机制

一、内核内存分配 在linux内核中伙伴系统用来管理物理内存,其分配的单位是页,但是向用户程序一样,内核也需要动态分配内存,而伙伴系统分配的粒度又太大。由于内核无法借助标准的C库,因而需要别的手段来实现内核中动态内存的分配管理,linux采用的是slab分配器。slab分配器不仅可以提供动态内存...

2016-10-06 10:17:05

阅读数 3683

评论数 0

linux物理内存管理技术

linux使用伙伴系统来管理物理内存页。 一、伙伴系统原理 1. 伙伴关系 定义:由一个母实体分成的两个各方面属性一致的两个子实体,这两个子实体就处于伙伴关系。在操作系统分配内存的过程中,一个内存块常常被分成两个大小相等的内存块,这两个大小相等的内存块就处于伙伴关系。它满足 3 ...

2016-10-06 10:14:45

阅读数 1259

评论数 0

linux段页式内存管理技术

一、概述 1.虚拟地址空间 内存是通过指针寻址的,因而CPU的字长决定了CPU所能管理的地址空间的大小,该地址空间就被称为虚拟地址空间,因此32位CPU的虚拟地址空间大小为4G,这和实际的物理内存数量无关。 Linux内核将虚拟地址空间分成了两部分: 一部分是用户进程可用的,这部分...

2016-10-06 10:12:10

阅读数 1575

评论数 0

快速区分集线器、交换机、路由器、网桥、网关

集线器(HUB)   集线器就是将网线集中到一起的机器,也就是多台主机和设备的连接器。集线器的基本功能是信息分发,它把一个端口接收的所有信号向所有端口分发出去。一些集线器在分发之前将弱信号重新生成,一些集线器整理信号的时序以提供所有端口间的同步数据通信。集线器在OSI/RM中的物理层。  ...

2016-08-25 11:34:14

阅读数 458

评论数 0

nandflash启动 和 norflash启动

S3C2440的启动时读取的第一条指令是在 0x00 上,分为成 nand flash 和 nor flash 上启动。           nand flash:适合大容量数据存储,类似硬盘;         nor flash:适合小容量的程序或数据存储,类似小硬盘;       ...

2016-08-25 10:36:46

阅读数 215

评论数 0

C++ 模板详解

1. 模板的概念     我们已经学过重载(Overloading),对重载函数而言,C++的检查机制能通过函数参数的不同及所属类的不同。正确的调用重载函数。例如,为求两个数的最大值,我们定义MAX()函数需要对不同的数据类型分别定义不同重载(Overload)版本。 //函数1.in...

2016-08-22 11:44:51

阅读数 395

评论数 0

虚拟内存与物理内存的区别

第一层理解         1.每个进程都有自己独立的4G内存空间,各个进程的内存空间具有类似的结构           2.一个新进程建立的时候,将会建立起自己的内存空间,此进程的数据,代码等从磁盘拷贝到自己的进程空间,哪些数据在哪里,都由进程控制表中的task_struct记...

2016-08-22 10:00:50

阅读数 2689

评论数 0

new/delete 与 malloc/free 的区别

在 C++ 中,申请动态内存与释放动态内存,用 new / delete 与 malloc / free 都可以,而且它们的存储方式都相同,new / malloc 动态申请的内存都位于堆中,无法被操作系统自动回收,需要对应的 delete / free 来释放空间,同时对于一般的数据类型,如...

2016-08-22 09:53:06

阅读数 182

评论数 0

浅谈缓冲区溢出问题

缓冲区:程序运行时机器内存中的一块连续块,保存了给定类型的数据,随着动态分配变量出现问题。         缓冲区溢出:当缓冲区内填充数据位数超过了缓冲区自身的容量限制时,发生溢出的数据会覆盖在合法数据(数据、下一指令的指针、函数返回地址等)上的情况。最好的情况是程序不允许输入超过缓冲区长度...

2016-08-18 22:49:02

阅读数 507

评论数 0

浅谈内存泄漏与内存溢出的区别?

内存溢出:是指程序在申请内存时,没有足够的内存空间供其使用,出现内存溢出;         内存泄露:是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄露危害可以忽略,但内存泄露堆积后果很严重,无论多少内存,迟早会被占光。         内存泄露会最终会导致内存溢...

2016-08-18 21:50:31

阅读数 225

评论数 0

前置运算符与后置运算符的区别

前置运算符:先取变量的地址,运算它的内容,然后把值放到寄存器中。 后置运算符:先取变量的地址,把它的值装入寄存器中,在运算它内存中的内容。 简而言之:前置是先算后用,后置是先用后算; #includeint main(){    int a,b,c,d;    a...

2016-08-15 10:44:40

阅读数 2821

评论数 0

详解 C/C++中 extern 关键字

1 定义:     extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。 问题1 :     extern + 变量  在一个源文件里定义了一个数组:char a[5];  在另外一个文件里...

2016-08-15 10:18:22

阅读数 538

评论数 0

进程间通信机制有哪些?

进程间的通信方式:    1.管道(pipe)及有名管道(named pipe):     管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。进程的亲缘关系通常是指父子进程关系。     有名管道也是半双工的通信方式,但是它允许无亲缘关系进程间的通...

2016-08-14 20:09:05

阅读数 5065

评论数 0

Sizeof与Strlen的区别与联系

一、sizeof     sizeof(...)是运算符,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组、指针、类型、对象、函数等。     它的功能是:获得保证能容纳实现所建立的最大对象的字节大小。     由于在编译时计算,因此sizeof...

2016-08-14 14:33:39

阅读数 192

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭