本团队有11年以上的解决方案端到端开发经验,涉及的行业有云计算、应用软件(包括WEB)、嵌入式、分布式、大型服务程序(Windows/Linux)、操作系统等。
Standards-zigbee-smart-energy-1-2-revision-4 http://www.
微服务架构在最近两年炒比较火热,最近有个朋友在做充电桩管理软件,该软件是两年前采用C/S模式开发的 ,主要Client(UI)和 Server端两个层次,中间采用数据库共享方式进行通信,如下图所示为充电桩管理软件的客户端界面: 这类应用是传统的C/S模式,适合于30个场站以下的管理和应用,在当前充电桩整体规模不大的情况下,还是勉强可以支撑试用的,最近我这位朋友遇到一个新需求,要接入到第三方的管理平台(B/S模式)中,要求提供标准的REST接口。
https://ez.analog.com/docs/DOC-12488 In typical 6LoWPAN networks, the registration is normally referred to as the node joining process.
今天重新看了《STL源代码剖析》,不禁要赞叹STL设计的经典。STL 的空间适配代码设计的尤为精辟,不仅考虑到内存碎片的隐患,而且考虑到指针空间的节俭和复用,降低维护链表(lists)带来额外的负担。
In data centers today, many computers suffer the same underutilization in computingpower and networking bandwidth.
placement new 是重载operator new的一个标准、全局的版本,它不能被自定义的版本代替(不像普通的operator new和operator delete能够被替换成用户自定义的版本)。
从 Servlet 容器说起 要介绍 Servlet 必须要先把 Servlet 容器说清楚,Servlet 与 Servlet 容器的关系有点像枪和子弹的关系,枪是为子弹而生,而子弹又让枪有了杀伤力。
最近调试的一段代码,请一起look look! #include #include #include using namespace std; namespace MCD { template struct Typelist{...
One problem which often arises during programming is how to build a base set of functionality which can be extended by...
mutalbe的中文意思是“可变的,易变的”,跟constant(既C++中的const)是反义词。 在C++中,mutable也是为了突破const的限制而设置的。
Introduction A few days back, I was doing a job, and unintentionally, I made a mistake in the code (What mistake? That I will...
所谓消息队列就是指一个消息链表。int msgget(key_t, int flag):创建和打开队列int msgsnd(int msqid, struct msgbuf *msgp, size_t msgsz, int flag):发送消息,msgid是消息队列的id,msgp是消息内容所在的缓冲区,msgsz是消息的大小,msgflg是标志。
epoll Scalability Web Page Introduction Interface Description Man Pages Testing dphttpd dphttpd SMP results dp...
Linux平台上,Nginx使用epoll完成事件驱动,实现高并发;本文将不对epoll本身进行介绍(网上一堆一堆的文章介绍epoll的原理及使用方法,甚至源码分析等),仅看一下Nginx是如何使用epoll的。
Windows CE系统开发,BSP包中的几个常见文件详解 BSP介绍(Board Support Package)是介于底层硬件和上层软件之间的底层软件开发包,它主要功能为屏蔽硬件,提供操作系统及硬件驱动,具体功能包括: (1) 单板硬件初始化,主要是CPU的初始化,为整个软件系统提供底层硬件支持; (2) 为操作系统提供设备驱动程序和系统中断服务程序; (3) 定制操作系统的功能,为软件系统提供一个实时多任务的运行环境; (4) 初始化操作系统,为操作系统的正常运行做好准备。
在实际开发过程中,经常希望能在应用程序中直接读写设备的物理空间。以前在做WinCE6.0下的MEMMgr时通过秘密加载一个内核态驱动实现了这个需求。
Smart Pointers - What, Why, Which? What are they?Smart pointers are objects that look and feel like pointers, but are smarter.
Making your C++ code robust Introduction 在实际的项目中,当项目的代码量不断增加的时候,你会发现越来越难管理和跟踪其各个组件,如其不善,很容易就引入BUG。
Download sample - 95.21 KB Table of Contents Introduction Some Basic Concepts of COM Practical Exa...
为了提高效率和有效的监控内存的实时状态,我们采取了内存池的思想来解决效率与对内存实现监控的问题。 网上查找到了一些方案,根据自己的理解实现了应用。 我们什么时候要调用到内存池, 1,当我们频繁的申请释放同样数据大小的内存空间,我们可以用比动态new更有效方式来管理内存时,我们应该用内存池来提高效率。
The following source was built using Visual Studio 6.0 SP5 and Visual Studio .
Mark PlaggeMicrosoft Corporation May 2004 Applies To: Microsoft® Windows® CE 5.
OverLapped I/O Socket 的问题,请教了!-Delphi知识大全 wsasend 异步投递一个发送请求,为了简单lpBuffers 参数只用了一个wsabuf结构,如果一次投递一个50M左右的请求可以成功,但是当我投递一个200M...
最近比较忙,很久没有写博客了,持续长时间的编程,使得我完全沦为程序匠人。但是感觉却不是想别人那么糟糕,毕业已经快两年了,我为我的编程兴趣仍然如此强烈而感到欣慰,也对一直以来比较关心的“行业应用软件架构设计”有了更深的了解,这坚定了我的信念!...
在所有的预处理指令中,#Pragma指令可能是最复杂的了,它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作。#pragma指令对每个编译器给出了一个方法,在保持与C和C ++语言完全兼容的情况下,给出主机或操作系统专有的特征。
Introduction Now for embedded system development people are using operating system to add more features and at the same time reduce the development time of a complex system.
USB转COM驱动的编写实现有很多中方法,最近在网络上看到一个最常用的方式,即是虚拟一个COM口,在COM初试的时候进行打开一个USB设备.
typedef struct __HW_VTBL { PVOID (*HWInit)(ULONG Identifier, PVOID pMDDContext, PHWOBJ pHWObj); BOOL (*HWPostInit)(PVOID pH...
Section I 正确区分不同的查找算法count,find,binary_search,lower_bound,upper_bound,equal_range 本文是对Effective STL第45条的一个总结,阐述了各种查找算法的异同以及使用他们的时机。
(1)MmMapIoSpace 用法 在程序中使用的都是虚拟地址,如果要对物理地址进行操作,需要用到MmMapIoSpace把物理地址映射到虚拟地址,如:pBaseAddress = (PUCHAR)MmMapIoSpace(ioPhysicalBase, Size, FALSE);访问pBaseAddress的指向地址,就是访问被映射后ioPhysicalBase定义的物理地址。
金山安全卫士软件开源了! 前几天还只听别人提起,当时不以为然,心中觉得“怎么可能呢?”。 今天在google上搜索以下,果然,金山开源了,下载代码瞧瞧,果真是货真价实的源代码啊!这对于中国软件界的同仁们该是多大好事啊~, 就个人而言,但从技术难度来看,当属信息安全类的软件编码较难实现。
Generic P2P Architecture, Tutorial and Example By dzzxyz | 15 Mar 2004 Generic P2P architecture, tutorial and example that covers basic P2P strategy.
近日听一朋友介绍了一款Andriod软件,集导航、聊天功能以一身。试分析了下这款软件实现其实不难,主要应用了google map方面的技术。但是反过来想想,如果用硬生生的C++实现,那难度可不小,可以说根本不是一个人能完成的。
MSDN:When using AcceptEx, the GetAcceptExSockaddrs function must be called to parse the buffer into its three distinct parts ...
嵌入式通用行业应用平台的灵魂和搭建 嵌入式通用行业应用平台的灵魂和搭建 机会总是伴随着市场需求的到来,如今嵌入式行业的发展如日中天。
(DirectX系列09)DirectShow EDS应用编码分析 DES (DirectShow Editing Services),是一套基于DirectShow核心框架的编程接口。
该程序可以用于两个人在LAN/Intranet(或者Internet)上进行视频会议。现在有许多视频会议程序,每个都有各自的性能提升技术。主要的问题是视频会议视频帧的尺寸对于传输来说太大。
NTSTATUS DPQueryVolumeInformation( PDEVICE_OBJECT DevObj, LARGE_INTEGER * TotalSize, DWORD * ClusterSize, DWO...
页面文件,是指操作系统反映构建并使用虚拟内存的硬盘空间大小所使用的文件。要整理页面文件,首先将页面文件从原先所在的驱动器移动到其他驱动器,然后对原来驱动器进行整理,最后再将页面文件移回到原驱动器上,此时页面文件就会存放在连续的磁盘空间中了。
merge主要用于两表之间的关联操作 oracle中 merge: 从oracle 9i开始支持merge用法,10g有了完善 create table a (id_ integer,count_ integer); insert ...
在DirectShow 中有很多Samples,WavDest就是其中一个,这个Fliter主要用于将采集到的视频流写入到指定的文件,文件格式是.WAV。
MFC下Filter的编写和Win32下Filter的编写极其相似,但又存在很多不同点,在Win32中需要去实现CreateInstance函数,而在MFC直接用NEW 动态产生,不过这并不代表不需要去维护Filter对象计数,因此在MFC ...
(DirectX系列06)DirectShow 字符叠加Filter编码分析 在很多视频播放的软件当中,字幕的处理是免不了的,有些可能本身已经加载到图像当中未做处理,但大部分都是通过字符叠加来进行处理的。
关于强制类型转换的问题,很多书都讨论过,写的最详细的是C++ 之父的《C++ 的设计和演化》。最好的解决方法就是不要使用C风格的强制类型转换,而是使用标准C++的类型转换符:static_cast, dynamic_cast。
在Windows CE下显示驱动是一个比较复杂的驱动,不仅仅设计到硬件的操作,还有上层驱动的GDI接口支持,有时候还需要支持DirectDraw等绘图接口。
【摘要】本文以作者的实践开发经验为主线,从理论和实际的角度探讨快速原型开发模式在实践开发中的应用,并从软件开发的各个角度、各个时期剖析快速开发模式的优缺点和应该注意的问题。
S3C2440A RISC微处理器可以支持多主设备IIC总线串行接口。专用串行总线(SDA)和串行时钟线(SCL)承载总线主机设备和连接IIC总线的外围设备之间的信息。
/* my_button.h */#ifndef _MY_BUTTON_H_#define _MY_BUTTON_H_#define BUTTON_POSE_DOWN -1#define BUTTON_POSE_NORM...
IO_STACK_LOCATION 结构 The IO_STACK_LOCATION structure defines an I/O stack location , which is an entry in the I/O stack that is associated with each IRP.
Linux一直试图在桌面操作系统上与Windows一决高低,但是多年来赢取的市场份额非常有限。事实证明,除去PC桌面,Linux还有很多可 以争取的市场空间。