Linux UDP¼òµ¥·â×°
//CUdp.h
#ifndef MY_CUDP
#define MY_CUDP
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <unistd.h>
class CUdp{
public:
CUdp(const char* destIP, unsigned short localPort, unsigned short destPort);
CUdp(unsigned int destIP, unsigned short localPort, unsigned short destPort);
int sendData(void *data, unsigned int length);
int recvData(void *data, unsigned int length,unsigned int &inIP,unsigned short& inPort);
~CUdp(){close(sock_fd);}
private:
int sock_fd;
struct sockaddr_in local_addr;
struct sockaddr_in dest_addr;
};
#endif
//CUdp.cpp
#include "CUdp.h"
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include <errno.h>
#include <assert.h>
#include <arpa/inet.h>
CUdp::CUdp(unsigned int destIP,unsigned short localPort, unsigned short destPort)
{
memset(&local_addr,0,sizeof(local_addr));
local_addr.sin_family = AF_INET;
local_addr.sin_addr.s_addr = htonl(INADDR_ANY);
local_addr.sin_port = htons(localPort);
memset(&dest_addr, 0, sizeof(dest_addr));
/* ÐÒ鵨ַ×é°ü */
dest_addr.sin_family = AF_INET; /* ÐÒéÃû */
dest_addr.sin_addr.s_addr = htonl(destIP); /* ×Ô¶¯·ÖÅ䵨ַ */
dest_addr.sin_port = htons(destPort); /* ¶Ë¿ÚºÅ */
/* ×éװϵͳµ÷ÓÃsocketºÍbind */
if((sock_fd = socket(AF_INET, SOCK_DGRAM, 0)) < 0)
{
perror(strerror(errno));
exit(0);
}
/* ´´½¨UDPÌ×½Ó×ÖÃèÊö·û */
if(bind(sock_fd, (struct sockaddr *)&local_addr, sizeof(local_addr)) < 0 ) /* ÃüÃûÌ×½Ó×Ö */
{
perror(strerror(errno));
exit(0);
} // return 0; /* ×¼±¸³É¹¦£¬ÕýÈ··µ»Ø */
//assert(close(*pnSock) == 0); /* ×¼±¸Ê§°Ü£¬¹Ø±ÕÌ×½Ó×ÖÃèÊö·û */
//return 1;
}
CUdp::CUdp(const char* destIP, unsigned short localPort, unsigned short destPort)
{
memset(&local_addr,0,sizeof(local_addr));
local_addr.sin_fami
Ïà¹ØÎĵµ£º
Service Discovery Protocol(SDP)ÌṩһÖÖÄÜÁ¦£¬ÈÃÓ¦ÓóÌÐòÓз½·¨·¢ÏÖÄÄÖÖ·þÎñ¿ÉÓÃÒÔ¼°ÕâÖÖ·þÎñµÄÌØÐÔ¡£
·þÎñ·¢ÏÖÐÒé(SDP»òBluetooth SDP)ÔÚÀ¶ÑÀÐÒéÕ»ÖжÔÀ¶ÑÀ»·¾³ÖеÄÓ¦ÓóÌÐòÓÐÌØÊâµÄº¬Ò⣬·¢ÏÖÄĸö·þÎñÊÇ¿ÉÓõĺÍÈ·¶¨ÕâЩ¿ÉÓ÷þÎñµÄÌØÕ÷¡£SDP¶¨ÒåÁËbluetooth client·¢ÏÖ¿ÉÓÃbluetooth server·þÎñºÍËüÃǵÄÌØÕ÷µÄ·½·¨¡£ ......
Ò»£ºÇ°ÑÔ
×î½üÔÚÑо¿androidµÄsensor driver£¬Ö÷ÒªÊÇE-compass£¬ÆäÖÐÓõ½ÁËLinux input×Óϵͳ.ÔÚÍøÉÏÒ²¿´Á˺ܶàÕâ·½ÃæµÄ×ÊÁÏ£¬¸Ð¾õ»¹ÊÇÕâÆª·ÖÎöµÄ±È½ÏϸÖÂ͸³¹£¬Òò´Ë×ªÔØÒ»ÏÂÒÔ±ã×Ô¼ºÑ§Ï°£¬Í¬Ê±ºÍ´ó¼Ò·ÖÏí£¡
£¨ÕâÆª²©¿ÍÖ÷ÒªÊÇÒÔ¼üÅÌÇý¶¯ÎªÀýµÄ£¬²»¹ý½²½âµÄÊÇLinux Input Subsystem£¬¿ÉÒÔ×ÐϸµÄÑо¿Ò»Ï£¡£©
¼üÅÌÇý¶¯½«¼ì ......
Ê×ÏÈÏÂÔØÁ½¸öÎļþ£º
wget http://cronolog.org/download/cronolog-1.6.2.tar.gz
wget http://prdownloads.sourceforge.net/awstats/awstats-6.7.tar.gz
cronologÊÇÓÃÀ´¸Ä±äÈÕÖ¾µÄ¸ñʽÒÔÊʺÏawstatsµÄ·ÖÎö
cronologºÜºÃ×°£¬ÏÂÔØºó½â°ü£¬ÃüÁîÐа²×°
./configure
make
make install
½ÓÏÂÀ´ÐÞ¸ÄapacheÅäÖÃÎļþhttpd.c ......
1. µØÖ·¿Õ¼äµÄ¹ÜÀí
¡¡¡¡ÎïÀíµØÖ·¶¼ÊÇÓÐÄں˹ÜÀíµÄ£¬ node-->zone-->mem_map-->page, ËùÓеÄÎïÀíÒ³Ãæ¶¼ÔÚmem_mapÊý×éÖеÄÒ³Ö¡¶ÔÓ¦£¬ È»ºó²»Í¬µÄpageÓзÖΪDMA£¬normal£¬highmemÈý¸özone¡£
¡¡¡¡ÄÚºËÏßÐÔµØÖ·¿Õ¼ä£¬ ʵ¼ÊÉÏÖ»ÊǵͶËÄÚ´æ²ÅÓÐÏßÐÔµØÖ·£¬0---896MB²¿·Ö¡£
¡¡¡¡ÄÚºËÐéÄâµØÖ·£¬ µÍ¶ËÄÚ´æµÄÐéÄâµØÖ·ÓëÏ ......
ÕæÕý½Ó´¥linuxµ½ÏÖÔÚ½«½ü1ÄêÁË£¬ÓÉ×î³õµÄÃÅÍ⺺£¬µ½ÏÖÔڱȽϵÃÐÄÓ¦ÊÖµÄʹÓÃlinux£¬Íê³É¼¸ºõËùÓй¤×÷£¬°üÀ¨³ÌÐò¿ª·¢¡¢±¾µØÏµÍ³Î¬»¤¡¢½»Á÷¡¢ÓéÀֵȹ¦ÄÜ£¬ËãÊÇÊÕ»ñÆÄ·áÁË¡£
×ܽáÁËÒ»ÏÂ×Ô¼ºÓÃÆðÀ´¸Ð¾õ²»´íµÄlinux¹¤¾ß£º(²»·Ö˳Ðò£¬linux·¢ÐаæÓõÄÊÇfedora 10)
1. ±à¼Æ÷: vim (Ààuinxƽ̨ÉϹ«ÈÏ×î¾µäµÄ£¬Ã»»°Ëµ)
2. ³ÌÐò¿ª ......