windows到Linux代码移植
1、一些常用函数的移植
http://www.vckbase.com/document/viewdoc/?id=1586
2、网络 ------ 转载 & 修改(待整理)
socket相关程序从windows移植到linux下需要注意的
1)头文件
windows下winsock.h/winsock2.h
linux下sys/socket.h
错误处理:errno.h
2)初始化
windows下需要用WSAStartup
linux下不需要
3)关闭socket
windows下closesocket(...)
linux下close(...)
4)类型
windows下SOCKET
linux下int
如我用到的一些宏:
#ifdef WIN32
typedef int socklen_t;
typedef int ssize_t;
#endif
#ifdef __LINUX__
typedef int SOCKET;
typedef unsigned char BYTE;
typedef unsigned long DWORD;
#define FALSE 0
#define SOCKET_ERROR (-1)
#endif
5)获取错误码
windows下getlasterror()/WSAGetLastError()
linux下errno变量
6)设置非阻塞
windows下ioctlsocket()
linux下fcntl() <fcntl.h>
7)send函数最后一个参数
windows下一般设置为0
linux下最好设置为MSG_NOSIGNAL,如果不设置,在发送出错后有可 能会导致程序退出。
8)毫秒级时间获取
windows下GetTickCount()
linux下gettimeofday()
3、多线程
多线程: (win)process.h --〉(linux)pthread.h
_beginthread --> pthread_create
_endthread --> pthread_exit
相关文档:
1. HCI层协议概述:
HCI提供一套统一的方法来访问Bluetooth底层。如图所示:
从图上可以看出,Host Controller Interface(HCI) 就是用来沟通Host和Module。Host通常就是PC, Module则是以各种物理连接形式(USB,serial,pc-card等)连接到PC上的bluetooth Dongle。
在Host这一端:application,SDP,L2cap等协议 ......
Service Discovery Protocol(SDP)提供一种能力,让应用程序有方法发现哪种服务可用以及这种服务的特性。
服务发现协议(SDP或Bluetooth SDP)在蓝牙协议栈中对蓝牙环境中的应用程序有特殊的含意,发现哪个服务是可用的和确定这些可用服务的特征。SDP定义了bluetooth client发现可用bluetooth server服务和它们的特征的方法。 ......
<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
-->
在本文中,
Linux
是
GNU/Linux
桌面系统的泛称,其典型代表是
Ubuntu
9.10
发行版。计算机预装
Linux
是人们多年来的梦想。如今,这个梦想终于实现了。此话当真?
  ......
当ram小于896mb时的最终内核页表
由内核页表所提供的最终映射必须把从0xc0000000开始的线性地址转化为从0开始的物理地址。
#define __pa(x) ((unsigned long)(x)-PAGE_OFFSET)将从page_offset开始的线性地址转换成相应的物理地址。
#define __va(x) ((void *)((unsigned long)(x)+PAGE_OFFSET)) ......