linux¹²ÏíÄÚ´æÊ¹ÓÃʵÀý
Èý¸öÎļþ£¬Ò»¸öÍ·Îļþ£¬Ò»¸ö¶Á£¬Ò»¸öд£¬ÓÃͬһ¸ökeyÖµÉêÇë¹²ÏíÄÚ´æ¡£
//shm.h
#ifndef _SHM_COM_H
#define _SHM_COM_H 1
#define TEXT_SZ 2048
struct shared_use_at
{
int written_by_you;
char some_text[TEXT_SZ];
};
struct kts
{
int power;
int mode;
int temp;
int windspeed;
int write_flag;
};
#endif
//shm_write.c
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/shm.h>
#include "shm.h"
int main()
{
int running = 1;
void *shared_memory = (void *)0;
struct shared_use_at *shared_stuff;
char buffer[BUFSIZ];
int shmid;
shmid = shmget((key_t)1234, sizeof(struct shared_use_at), 0666 | IPC_CREAT);
if(shmid == -1)
{
fprintf(stderr, "shmget failed\n");
exit(EXIT_FAILURE);
}
shared_memory = shmat(shmid, (void *)0, 0);
if(shared_memory == (void *)-1)
{
fprintf(stderr, "shmat failed\n");
exit(EXIT_FAILURE);
}
printf("Memory attached at %X\n", (int)shared_memory);
shared_stuff = (struct shared_use_at *)shared_memory;
while(running)
{
while(shared_stuff->written_by_you == 1)
{
sleep(1);
printf("waiting for client...\n");
}
printf("Enter some text: ");
&n
Ïà¹ØÎĵµ£º
linuxÏÂi386,i486,i586,i686µÄÇø±ð
.
i386,i486,i586·Ö±ðÊÇÕë¶Ô80386,80486,80586±àÒëµÄ°ü£¬i686¾Í±È½Ï¹ã·ºÁË£¬´Óp2¿ªÊ¼x86´¦ÀíÆ÷¾Í½øÈëÁËp6¹¹¼ÜµÄʱ´ú£¬Ò»Ö±µ½ÏÖÔÚ¶¼ÊÇp6¼Ü¹¹¡£Ð¼ܹ¹µÄcpuÏòϼæÈÝΪ¾É¼Ü¹¹±àÒëµÄÈí¼þ°ü.
i386.rpmÓëi686.rpmÓÐÊ²Ã´Çø±ð?
x86Ìåϵ½á¹¹ËäȻָÁî¶¼Ò»Ñù£¬µ«ÊDz»Í¬Ê±´úµÄ¾ßÌåʵÏÖ£¬ÔÚ±àÒëÓ ......
ÔÚʹÓÃWindowsÃüÁîÐвÙ×÷MySQLÊý¾Ý¿âµÄʱºò£¬ÒÔutf8¸ñʽ´æ´¢ÔÚMySQLÊý¾Ý¿âÖеÄÊý¾Ý£¬´ÓÃüÁîÐжÁÈ¡³öÀ´×ÜÊÇÂÒÂ룬ÏÔʾȫÊÇÎʺš£»òÕß´ÓÃüÁîÐвåÈëÐÂÊý¾Ý£¬½á¹ûÏà·´£¬ÔÚÃüÁîÐÐÖÐÏÔʾÊÇÕý³£µÄ£¬µ«ÊÇÔÚPHPMyAdminÖÐÈ´ÊÇÂÒÂë¡£
¡¡¡¡¾¹ýÉÏÍø²éÕÒÑо¿£¬·¢ÏÖmysqlµÄÃüÁîÐпͻ§¶Ë¸ù±¾ÎÞ·¨ÒÔutf-8µÄÐÎʽ·µ»ØÊý¾Ý£¬½â¾öÈçÏ¡£
¡¡¡¡² ......
½â¾ö²½Ö裺ÒÔarm-linux-gcc-4.3.2.tgzΪÀý
1. °Ñarm-linux-gcc-4.3.2.tgz¿½±´µ½ÄãÖ¸¶¨µÄĿ¼ÀȻºóÓÃtarÃüÁî½âѹµ½µ±Ç°Ä¿Â¼¡£³É¹¦ºó£¬»áÔÚ4.3.2/binÏÂÕÒµ½arm-linux-gcc¡£
ÀýÈ磺/opt/arm-linux-gcc-4.3.2.taz£¬ÒÔÏÂÃüÁºìɫΪϵͳÌáʾ·û£¬ºÚɫΪÓû§ÃüÁî
gylu@dell-desktop:~$ ......
1 ÒýÑÔ
¡¡¡¡Ị̈߳¨thread£©¼¼ÊõÔçÔÚ60Äê´ú¾Í±»Ìá³ö£¬µ«ÕæÕýÓ¦ÓöàÏ̵߳½²Ù×÷ϵͳÖÐÈ¥£¬ÊÇÔÚ80Äê´úÖÐÆÚ£¬solarisÊÇÕâ·½ÃæµÄٮٮÕß¡£´«Í³µÄUnixÒ²Ö§³ÖÏ̵߳ĸÅÄµ«ÊÇÔÚÒ»¸ö½ø³Ì£¨process£©ÖÐÖ»ÔÊÐíÓÐÒ»¸öỊ̈߳¬ÕâÑù¶àÏ߳̾ÍÒâζ×Å¶à½ø³Ì¡£ÏÖÔÚ£¬¶àÏ̼߳¼ÊõÒѾ±»Ðí¶à²Ù×÷ϵͳËùÖ§³Ö£¬°üÀ¨Windows/NT£¬µ±È»£¬Ò²°üÀ¨Linux¡£
......
LinuxµÄI/O»úÖÆ¾ÀúÁËһϼ¸¸ö½×¶ÎµÄÑݽø£º
1. ͬ²½×èÈûI/O: Óû§½ø³Ì½øÐÐI/O²Ù×÷£¬Ò»Ö±×èÈûµ½I/O²Ù×÷Íê³ÉΪֹ¡£
2. ͬ²½·Ç×èÈûI/O: Óû§³ÌÐò¿ÉÒÔͨ¹ýÉèÖÃÎļþÃèÊö·ûµÄÊôÐÔO_NONBLOCK£¬I/O²Ù×÷¿ÉÒÔÁ¢¼´·µ»Ø£¬µ«ÊDz¢²»±£Ö¤I/O²Ù×÷³É¹¦¡£
3. Ò첽ʼþ×èÈûI/O: Óû§½ø³Ì¿ÉÒÔ¶ÔI/Oʼþ½øÐÐ×èÈû£¬µ«ÊÇI/O²Ù×÷²¢²»×èÈû¡£Í¨¹ýse ......