Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

LINUX½ø³Ì¼äͨÐÅ

                                     Linux ½ø³Ì¼äͨÐÅѧϰ
1.Linux ¼ä½ø³ÌͨÐŵķÖÀà
1.   ¹ÜµÀͨÐÅ£¨pipe£©ºÍÃüÃû¹ÜµÀ£¨FIFO£©
2.   Ðźţ¨Èí¼þÖжϣ©
3.   ÏûÏ¢¶ÓÁÐ
4.   ¹²ÏíÄÚ´æ
5.   ÐźÅÁ¿
6.   SOCKET
1.1¹ÜµÀͨÐÅ
¹ÜµÀͨÐÅÖ÷Òª·ÖÆÕͨ¹ÜµÀºÍÃüÃû¹ÜµÀ¡£
ËûÃÇÖ®¼äµÄ²î±ð¾ÍÔÚÓÚÆÕͨ¹ÜµÀÊʺÏͬһ¸ö׿ÏȵÄÁ½¸ö½ø³ÌÖ®¼äµÄͨÐÅ£¬¶øÃüÃû¹ÜµÀÔò²»ÊܸÃÏÞÖÆ¡£
¹ÜµÀÏà¹Øº¯ÊýÓÐ:
Int pipe(int filedes[2]);
Pipe º¯ÊýÓÃÓÚÔÚÄÚºËÖпª±ÙÒ»¿é»º³åÇøÓÃÓÚͨÐÅ£¬filedesÊÇ´«µÝ¸øÓû§µÄÁ½¸öÎļþÃèÊö·û¡£Filedes[0]ÓÃÓÚ¶Á£¬filedes[1]ÓÃÓÚд¡£
µ÷Óóɹ¦·µ»Ø0£¬·ñÔò·µ»Ø-1.
#include <unistd.h>
#include <sys/types.h>
#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
 
int main()
{
         int pipe_fd[2];
         pid_t pid;
         char buf_r[100];
         char* p_wbuf;
         int r_num;
         memset(buf_r,0,sizeof(buf_r));
         if(pipe(pipe_fd)<0)
         {
         printf("pipe create error\n");
         return -1;
         }
         if((pid=fork())==0)
         {
                   printf("\n");
                &nbs


Ïà¹ØÎĵµ£º

Interrupt in Linux£¨Ó²¼þƪ£©—— APIC2


1.2.2 LAPIC
ÊÕµ½À´×ÔIOAPICµÄÖжÏÏûÏ¢ºó£¬LAPIC»á½«¸ÃÖжϽ»ÓÉCPU´¦Àí¡£ºÍIOAPIC±È½Ï£¬LAPIC¾ßÓиü¶àµÄ¼Ä´æÆ÷ÒÔ¼°¸ü¸´ÔӵĻúÖÆ¡£µ«¶ÔÓÚ´¦ÀíÀ´×ÔIOAPICµÄÖжÏÏûÏ¢£¬×îÖØÒªµÄ¼Ä´æÆ÷»¹ÊÇIRR¡¢ISRÒÔ¼°EOI¡£
ͼ1-4ÏÔʾÁËx86ƽ̨ÉÏ£¬IRRºÍISRµÄ¸ñʽ£º
 
ͼ1-4 IRR¡¢ISR¹¹³É
ÓëPICÖеÄIRR¡¢ISR²»Í¬µÄÊÇ£¬LAPICµÄISR¡¢ ......

LinuxÉ豸Çý¶¯Ö®I2C¼Ü¹¹·ÖÎö

Ò»:ǰÑÔ
I2cÊÇphilipsÌá³öµÄÍâÉè×ÜÏß.I2CÖ»ÓÐÁ½ÌõÏß,Ò»Ìõ´®ÐÐÊý¾ÝÏß:SDA,Ò»ÌõÊÇʱÖÓÏßSCL.ÕýÒòΪÕâÑù,Ëü·½±ãÁ˹¤³ÌÈËÔ±
µÄ²¼Ïß.ÁíÍâ,I2CÊÇÒ»ÖÖ¶àÖ÷»ú¿ØÖÆ×ÜÏß.ËüºÍUSB×ÜÏß²»Í¬,USBÊÇ»ùÓÚmaster-slave»úÖÆ,ÈκÎÉ豸µÄͨÐűØÐëÓÉÖ÷»ú·¢Æð²Å¿ÉÒÔ.¶ø
I2C ÊÇ»ùÓÚmulti master»úÖÆ.һͬ×ÜÏßÉÏ¿ÉÔÊÐí¶à¸ömaster.¹ØÓÚI2CЭÒéµÄÖª ......

×î¼òµ¥µÄ´°¿Ú(Gtk+ for Linux)

ÔÚLinuxÏÂʹÓÃGtk+ʵÏÖ×î¼òµ¥µÄGUI´°¿Ú£¬Ô´´úÂëÈçÏ£º
//SimpleGui.c
#include <gtk/gtk.h>
int main(int argc,char *argv[])
{
  //¶¨ÒåÒ»¸öwidget(Gtk+¹¹¼þ)£¬ÕâÀﶨÒåµÄÊÇÒ»¸ö´°¿Ú¹¹¼þ
  GtkWidget *wnd;
  //Gtk+2.0µÄ³õʼ»¯ÃüÁîÐвÎÊý£¬Ã¿Ò»¸öGtk+³ÌÐò¶¼ÒªÓÐÕâ¾ä»°
  gtk_init(& ......

LinuxÈí¼þ¼¯³É¿ª·¢»·¾³


package: download from:
Èí¼þ¼¯³É¿ª·¢»·¾³£¨´úÂë±à¼­¡¢ä¯ÀÀ¡¢±àÒë¡¢µ÷ÊÔ£©
Emacs http://www.gnu.org/software/emacs/
Source-Navigator 5.2b2 http://sourceforge.net/projects/sourcenav
Anjuta http://anjuta.sourceforge.net(¿ÉÓÃyum°²×°)
´úÂëË÷Òý¹¤¾ß
Cscope http://cscope.sourceforge.net/
KScope http:/ ......

LINUX SOCKET AIO ÎÊÌâ

дÁË´úÂ룬ʹÓÃace_proactor, Ô­À´windowsÅܵ÷dz£Æ¯ÁÁ£¬À´µ½linux¾Íʱ²»Ê±²»¹¤×÷£¬È»ºó¼Óasynce_connectorºó£¬·¢ÏÖÍê³É²»Äܹ¤×÷£¬async_stream_writeºó£¬·¢ÏÖ¿¨ÔÚÄÇÀ¸ù±¾·¢²»³öÈ¥£¬¶à´Î·ÖÎöºó£¬·¢ÏÖ£¬Ô­À´Ö®Ç°ÓÐaio_readûÓÐÍê³É£¬aio_writeµÄÇëÇó¾ÍblockÄÇÀïÁË£¬writeÕâ¸ö²Ù×÷¾¹È»Ò»¶¨ÒªµÈǰµÄaio_readÍê³ÉÖ®ºó£¬²Å¿ÉÒ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ