Skip to main content

Posts

Showing posts from October, 2011

Multithreading in C in Different CPU core

# define _GNU_SOURCE # include <stdio.h> # include <math.h> # include <stdlib.h> # include <pthread.h> # include <stdlib.h> pthread_mutex_t mux = PTHREAD_MUTEX_INITIALIZER; struct p2p{ int st; int en; }; void *primeChk(void* val); int main() {   pthread_t thread1,thread2,thread3,thread4;   struct p2p valu1,valu2,valu3,valu4;   int j,ret1,ret2,ret3,ret4;   cpu_set_t cpuset; // pthread_setaffinity_np(thread, sizeof(cpu_set_t), &cpuset);   valu1.st = 1;   valu1.en = 5000;   valu2.st = 5001;   valu2.en = 10000;   valu3.st = 10001;   valu3.en = 15000;   valu4.st = 15001;   valu4.en = 20000;    // initialization    CPU_ZERO(&cpuset);    CPU_SET(0,&cpuset);    pthread_setaffinity_np(thread1, sizeof(cpu_set_t), &cpuset);    ret1 = pthread_create(&thread1,NULL,&primeChk,(void*)&valu1);    //CPU_ZERO(&cpuse...

UDP server client in c

Server #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h> #include <stdio.h> #include <unistd.h> #include <errno.h> #include <string.h> #include <stdlib.h> int main() {         int sock;         int addr_len, bytes_read;         char recv_data[1024],send_data[1024];         struct sockaddr_in server_addr , client_addr;         if ((sock = socket(AF_INET, SOCK_DGRAM, 0)) == -1) {             perror("Socket");             exit(1);         }         server_addr.sin_family = AF_INET;         server_addr.sin...

TCP server client in C

Client Code #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <netdb.h> #include <stdio.h> #include <string.h> #include <stdlib.h> #include <unistd.h> #include <errno.h> int main() {         int sock, bytes_recieved;         char send_data[1024],recv_data[1024];         struct hostent *host;         struct sockaddr_in server_addr;         host = gethostbyname("127.0.0.1");         sock = socket(AF_INET, SOCK_STREAM,0);         server_addr.sin_family = AF_INET;         server_addr.sin_port = htons(5000);         server_addr.sin_addr = *((struct in_addr *)host->h_addr);   ...