{ int pipe(int fd[ ]) close
|
|
- Ἄδραστος Πυλαρινός
- 6 χρόνια πριν
- Προβολές:
Transcript
1 104 { { { { { {
2 105 pipe { int pipe(int fd[ ]) { fd[0] fd[1] {, -,,, write read { close { pipe 0-1
3 106 pipe /* File: pipe_demo.c */ #include <stdio.h> /* For printf */ #define READ 0 /* Read end of pipe */ #define WRITE 1 /* Write end of pipe */ char *phrase = "This is a test phrase." main() { int pid, fd[2], bytes char message[100] if (pipe(fd) == -1) { /* Create a pipe */ perror("pipe") exit(1) } if ((pid = fork()) == -1) { /* Fork a child */ perror("fork") exit(1) } if (pid == 0) { /* Child, writer */ close(fd[read]) /* Close unused end */ write(fd[write], phrase, strlen(phrase)+1) close(fd[write]) } /* Close used end */ else { /* Parent, reader */ close(fd[write]) /* Close unused end */ bytes = read(fd[read], message, sizeof(message)) printf("read %d bytes: %s\n", bytes, message) close(fd[read]) } } /* Close used end */ % pipe_demo Read 23 bytes: This is a test phrase. %
4 109 { AF_INET Internet : Internet { AF_UNIX Unix : { SOCK_STREAM (TCP) { SOCK_DGRAM (UDP) TCP UDP
5 110 htons, htonl, ntohs ntohl { unsigned short htons(unsigned short hostshort) { unsigned long htonl(unsigned long hostlong) { unsigned short ntohs(unsigned short netshort) { unsigned long ntohl(unsigned long netlong) { bytes \ " \ " short long { #include <sys/types.h> #include <netinet/in.h> gethostbyname gethostbyaddr { struct hostent *gethostbyname(char *name) { struct hostent *gethostbyaddr(char *addr, int len, int type) { struct hostent name, h_addr Internet h_length, addr, len type ( AF_INET), h_name { : #include <netdb.h>
6 111 { #include <sys/types.h> { #include <sys/socket.h> -1 socket { int socket(int domain, int type, int protocol) { ' { domain AF_INET AF_UNIX { To type SOCK_STREAM SOCK_DGRAM { protocol, default (0)
7 112 bind { int bind(int fd, struct sockaddr *address, int addresslen) { fd / *address { Internet struct sockaddr_in name AF_INET name.sin_family, htonl(inaddr_any) name.sin_addr.s_addr htons(port) name.sin_port, port name (struct sockaddr *) address : #include <netinet/in.h> { Unix struct sockaddr_un name AF_UNIX name.sun_family path name.sun_path, path - name (struct sockaddr *) address : #include <sys/un.h> { name addresslen
8 113 listen { int listen(int fd, int queuelength) { queuelength server clients fd accept { int accept(int fd, struct sockaddr *address, int *addresslen) { server fd { client *address *addresslen { server client connect { int connect(int fd, struct sockaddr *address, int addresslen) { client fd server *address addresslen
9 114 recvfrom sendto { int recvfrom(int fd, char *buf, int count, int ags, struct sockaddr *address, int *addresslen) { int sendto(int fd, char *buf, int count, int ags, struct sockaddr *address, int addresslen) { read write { fd, buf count read write { ags 0, { *address ( recvfrom) ( sendto) { *addresslen ( recvfrom), addresslen ( sendto)
10 115 getsockname { int getsockname(int fd, struct sockaddr *address, int *addresslen) { *address fd *addresslen { bind ( 0 name.sin_port) bzero bcopy { void bzero(char *buf, int count) 0 count bytes buf { void bcopy(char *buf1, char *buf2, int count) count bytes buf1 buf2
11 116 TCP client/server Server socket() bind() listen() accept() Client αναµονη συνδεσης socket() αποκατασταση συνδεσης connect() read() αιτηση write() επεξεργασια αιτησης write() απαντηση read()
12 117 UDP client/server Server socket() bind() recvfrom() Client αναµονη αιτησης socket() bind() αιτηση sendto() επεξεργασια αιτησης sendto() απαντηση recvfrom()
13 118 client server C Internet. /* File: int_str_server.c */ #include <sys/types.h> /* For sockets */ #include <sys/socket.h> /* For sockets */ #include <netinet/in.h> /* For Internet sockets */ #include <netdb.h> /* For gethostbyaddr */ #include <stdio.h> /* For I/O */ void reverse(char *) main(int argc, char *argv[]) /* Server with Internet stream sockets */ { int port, sock, newsock, serverlen, clientlen char buf[256] struct sockaddr_in server, client struct sockaddr *serverptr, *clientptr struct hostent *rem if (argc < 2) { /* Check if server's port number is given */ printf("please give the port number\n") exit(1) } if ((sock = socket(af_inet, SOCK_STREAM, 0)) < 0) { /* Create socket */ perror("socket") exit(1) } port = atoi(argv[1]) /* Convert port number to integer */ server.sin_family = AF_INET /* Internet domain */ server.sin_addr.s_addr = htonl(inaddr_any) /* My Internet address */ server.sin_port = htons(port) /* The given port */ serverptr = (struct sockaddr *) &server serverlen = sizeof server if (bind(sock, serverptr, serverlen) < 0) { /* Bind socket to an address */ perror("bind") exit(1) } if (listen(sock, 1) < 0) { /* Listen for connections */ perror("listen") exit(1) } printf("listening for connections to port %d\n", port)
14 119 while(1) { clientptr = (struct sockaddr *) &client clientlen = sizeof client if ((newsock = accept(sock, clientptr, &clientlen)) < 0) { perror("accept") exit(1) } /* Accept connection */ if ((rem = gethostbyaddr((char *) &client.sin_addr.s_addr, sizeof client.sin_addr.s_addr, /* Find client's address */ client.sin_family)) == NULL) { perror("gethostbyaddr") exit(1) } printf("accepted connection from %s\n", rem -> h_name) switch (fork()) { /* Create child for serving the client */ case -1: perror("fork") exit(1) case 0: /* Child process */ do { bzero(buf, sizeof buf) /* Initialize buffer */ if (read(newsock, buf, sizeof buf) < 0) { /* Receive message */ perror("read") exit(1) } printf("read string: %s\n", buf) reverse(buf) /* Reverse message */ if (write(newsock, buf, sizeof buf) < 0) { /* Send message */ perror("write") exit(1) } } while (strcmp(buf, "dne")!= 0) /* Finish on "end" */ close(newsock) /* Close socket */ exit(0) } } } void reverse(char *s) /* Function for reversing a string */ { int c, i, j for (i = 0, j = strlen(s) - 1 i < j i++, j--) { c = s[i] s[i] = s[j] s[j] = c } }
15 120 /* File: int_str_client.c */ #include <sys/types.h> /* For sockets */ #include <sys/socket.h> /* For sockets */ #include <netinet/in.h> /* For Internet sockets */ #include <netdb.h> /* For gethostbyname */ #include <stdio.h> /* For I/O */ main(int argc, char *argv[]) /* Client with Internet stream sockets */ { int port, sock, serverlen char buf[256] struct sockaddr_in server struct sockaddr *serverptr struct hostent *rem if (argc < 3) { /* Check if server's host name and port number are given */ printf("please give the host name and the port number\n") exit(1) } if ((sock = socket(af_inet, SOCK_STREAM, 0)) < 0) { /* Create socket */ perror("socket") exit(1) } if ((rem = gethostbyname(argv[1])) == NULL) { /* Find server's address */ perror("gethostbyname") exit(1) } port = atoi(argv[2]) /* Convert port number to integer */ server.sin_family = AF_INET /* Internet domain */ bcopy((char *) rem -> h_addr, (char *) &server.sin_addr, rem -> h_length) server.sin_port = htons(port) /* Server's Internet address and port */ serverptr = (struct sockaddr *) &server serverlen = sizeof server if (connect(sock, serverptr, serverlen) < 0) { /* Request connection */ perror("connect") exit(1) } printf("requested connection to host %s port %d\n", argv[1], port) do { bzero(buf, sizeof buf) /* Initialize buffer */ printf("give input string: ") gets(buf) /* Read message from stdin */ if (write(sock, buf, sizeof buf) < 0) { /* Send message */ perror("write") exit(1) } bzero(buf, sizeof buf) /* Initialize buffer */ if (read(sock, buf, sizeof buf) < 0) { /* Receive message */ perror("read") exit(1) } printf("read string: %s\n", buf) } while (strcmp(buf, "dne")!= 0) /* Finish on "end" */ close(sock) /* Close socket */ exit(0) }
16 121 % int_str_server Listening for connections to port Accepted connection from daphne.di.uoa.gr Read string: test Read string: A string Read string: niconanomimatamimonanocin Read string: This is a test line Read string: Teleiosame Read string: end ^C% % int_str_client daphne Requested connection to host daphne port Give input string: test Read string: tset Give input string: A string Read string: gnirts A Give input string: niconanomimatamimonanocin Read string: niconanomimatamimonanocin Give input string: This is a test line Read string: enil tset a si siht Give input string: Teleiosame Read string: emasoielet Give input string: end Read string: dne %
17 122 client server C Unix. /* File: un_str_server.c */ #include <sys/types.h> /* For sockets */ #include <sys/socket.h> /* For sockets */ #include <sys/un.h> /* For Unix sockets */ #include <stdio.h> /* For I/O */ #include <signal.h> /* For signals */ void reverse(char *) void sigchld_handler() main(int argc, char *argv[]) /* Server with Unix stream sockets */ { int sock, newsock, serverlen, clientlen char buf[256] struct sockaddr_un server, client struct sockaddr *serverptr, *clientptr if (argc < 2) { /* Check if socket filename is given */ printf("please give the socket filename\n") exit(1) } signal(sigchld, sigchld_handler) /* To be informed on child termination */ if ((sock = socket(af_unix, SOCK_STREAM, 0)) < 0) { /* Create socket */ perror("socket") exit(1) } server.sun_family = AF_UNIX /* Unix domain */ strcpy(server.sun_path, argv[1]) /* My Unix address */ unlink(argv[1]) /* Remove socket filename if it exists */ serverptr = (struct sockaddr *) &server serverlen = sizeof server if (bind(sock, serverptr, serverlen) < 0) { /* Bind socket to an address */ perror("bind") exit(1) } if (listen(sock, 1) < 0) { /* Listen for connections */ perror("listen") exit(1) } printf("listening for connections to socket %s\n", argv[1])
18 123 while(1) { clientptr = (struct sockaddr *) &client clientlen = sizeof client while ((newsock = accept(sock, clientptr, &clientlen)) < 0) printf("accepted connection\n") /* Accept connection */ switch (fork()) { /* Create child for serving the client */ case -1: perror("fork") exit(1) case 0: /* Child process */ do { bzero(buf, sizeof buf) /* Initialize buffer */ if (read(newsock, buf, sizeof buf) < 0) { /* Receive message */ perror("read") exit(1) } printf("read string: %s\n", buf) reverse(buf) /* Reverse message */ if (write(newsock, buf, sizeof buf) < 0) { /* Send message */ perror("write") exit(1) } } while (strcmp(buf, "dne")!= 0) /* Finish on "end" */ close(newsock) /* Close socket */ exit(0) } } } void reverse(char *s) /* Function for reversing a string */ { int c, i, j for (i = 0, j = strlen(s) - 1 i < j i++, j--) { c = s[i] s[i] = s[j] s[j] = c } } void sigchld_handler() /* Handler for SIGCHLD accepts child termination */ { int status wait(&status) }
19 124 /* File: un_str_client.c */ #include <sys/types.h> /* For sockets */ #include <sys/socket.h> /* For sockets */ #include <sys/un.h> /* For Unix sockets */ #include <stdio.h> /* For I/O */ main(int argc, char *argv[]) /* Client with Unix stream sockets */ { int sock, serverlen char buf[256] struct sockaddr_un server struct sockaddr *serverptr if (argc < 2) { /* Check if socket filename is given */ printf("please give the socket filename\n") exit(1) } if ((sock = socket(af_unix, SOCK_STREAM, 0)) < 0) { /* Create socket */ perror("socket") exit(1) } server.sun_family = AF_UNIX /* Unix domain */ strcpy(server.sun_path, argv[1]) /* Server's Unix address */ serverptr = (struct sockaddr *) &server serverlen = sizeof server if (connect(sock, serverptr, serverlen) < 0) { /* Request connection */ perror("connect") exit(1) } printf("requested connection to socket %s\n", argv[1]) do { bzero(buf, sizeof buf) /* Initialize buffer */ printf("give input string: ") gets(buf) /* Read message from stdin */ if (write(sock, buf, sizeof buf) < 0) { /* Send message */ perror("write") exit(1) } bzero(buf, sizeof buf) /* Initialize buffer */ if (read(sock, buf, sizeof buf) < 0) { /* Receive message */ perror("read") exit(1) } printf("read string: %s\n", buf) } while (strcmp(buf, "dne")!= 0) /* Finish on "end" */ close(sock) /* Close socket */ exit(0) }
20 125 % un_str_server str_socket Listening for connections to socket str_socket Accepted connection Read string: Testing stream sockets in the Unix domain... Read string: abcdefghijklmnopqrstuvwxyz Read string: >>>>>><<<<<< Read string: Is it OK? Read string: Fine! Read string: end ^C% rm str_socket % % un_str_client str_socket Requested connection to socket str_socket Give input string: Testing stream sockets in the Unix domain... Read string:...niamod xinu eht ni stekcos maerts gnitset Give input string: abcdefghijklmnopqrstuvwxyz Read string: zyxwvutsrqponmlkjihgfedcba Give input string: >>>>>><<<<<< Read string: <<<<<<>>>>>> Give input string: Is it OK? Read string:?ko ti si Give input string: Fine! Read string:!enif Give input string: end Read string: dne %
21 126 client server C Internet. /* File: int_dgr_server.c */ #include <sys/types.h> /* For sockets */ #include <sys/socket.h> /* For sockets */ #include <netinet/in.h> /* For Internet sockets */ #include <netdb.h> /* For gethostbyaddr */ #include <stdio.h> /* For I/O */ main(int argc, char *argv[]) /* Server with Internet datagram sockets */ { int n, port, sock, serverlen, clientlen char buf[256] struct sockaddr_in server, client struct sockaddr *serverptr, *clientptr struct hostent *rem if ((sock = socket(af_inet, SOCK_DGRAM, 0)) < 0) { /* Create socket */ perror("socket") exit(1) } server.sin_family = AF_INET /* Internet domain */ server.sin_addr.s_addr = htonl(inaddr_any) /* My Internet address */ server.sin_port = htons(0) /* Select any port */ serverptr = (struct sockaddr *) &server serverlen = sizeof server if (bind(sock, serverptr, serverlen) < 0) { /* Bind socket to an address */ perror("bind") exit(1) } if (getsockname(sock, serverptr, &serverlen) < 0) { /* Selected port */ perror("getsockname") exit(1) } printf("socket port: %d\n", ntohs(server.sin_port)) clientptr = (struct sockaddr *) &client clientlen = sizeof client while(1) { bzero(buf, sizeof buf) /* Initialize buffer */ if ((n = recvfrom(sock, buf, sizeof buf, 0, clientptr, &clientlen)) < 0) { perror("recvfrom") exit(1) } /* Receive message */ if ((rem = gethostbyaddr((char *) &client.sin_addr.s_addr, sizeof client.sin_addr.s_addr, client.sin_family)) == NULL) { perror("gethostbyaddr") exit(1) } /* Find client's address */ printf("received from %s: %s\n", rem -> h_name, buf) if (sendto(sock, buf, n, 0, clientptr, clientlen) < 0) { perror("sendto") exit(1) } } } /* Send message */
22 127 /* File: int_dgr_client.c */ #include <sys/types.h> /* For sockets */ #include <sys/socket.h> /* For sockets */ #include <netinet/in.h> /* For Internet sockets */ #include <netdb.h> /* For gethostbyname */ #include <stdio.h> /* For I/O */ main(int argc, char *argv[]) /* Client with Internet datagram sockets */ { int port, sock, serverlen, clientlen char buf[256] struct sockaddr_in server, client struct sockaddr *serverptr, *clientptr struct hostent *rem if (argc < 3) { /* Check if server's host name and port number are given */ printf("please give the host name and the port number\n") exit(1) } if ((sock = socket(af_inet, SOCK_DGRAM, 0)) < 0) { /* Create socket */ perror("socket") exit(1) } if ((rem = gethostbyname(argv[1])) == NULL) { /* Find server's address */ perror("gethostbyname") exit(1) } port = atoi(argv[2]) /* Convert port number to integer */ server.sin_family = AF_INET /* Internet domain */ bcopy((char *) rem -> h_addr, (char *) &server.sin_addr, rem -> h_length) server.sin_port = htons(port) /* Server's Internet address and port */ serverptr = (struct sockaddr *) &server serverlen = sizeof server client.sin_family = AF_INET /* Internet domain */ client.sin_addr.s_addr = htonl(inaddr_any) /* My Internet address */ client.sin_port = htons(0) /* Select any port */ clientptr = (struct sockaddr *) &client clientlen = sizeof client if (bind(sock, clientptr, clientlen) < 0) { /* Bind socket to an address */ perror("bind") exit(1) } while (gets(buf)!= NULL) { /* Read continuously messages from stdin */ if (sendto(sock, buf, strlen(buf)+1, 0, serverptr, serverlen) < 0) { perror("sendto") exit(1) } /* Send message */ bzero(buf, sizeof buf) /* Initialize buffer */ if (recvfrom(sock, buf, sizeof buf, 0, serverptr, &serverlen) < 0) { perror("recvfrom") exit(1) } /* Receive message */ printf("%s\n", buf) } }
23 128 % int_dgr_server Socket port: 1216 Received from daphne.di.uoa.gr: #!/bin/sh Received from daphne.di.uoa.gr: #@(#)ready 7.1 (ULTRIX) 7/22/92 Received from daphne.di.uoa.gr: while : Received from daphne.di.uoa.gr: do Received from daphne.di.uoa.gr: sleep 2 Received from daphne.di.uoa.gr: echo -n " Received from daphne.di.uoa.gr: Are you ready? (y/n): " Received from daphne.di.uoa.gr: read X Received from daphne.di.uoa.gr: case "$X" in Received from daphne.di.uoa.gr: [yy]*) break Received from daphne.di.uoa.gr: Received from daphne.di.uoa.gr: esac Received from daphne.di.uoa.gr: done ^C% % int_dgr_client daphne 1216 < /etc/ready #!/bin/sh #@(#)ready 7.1 (ULTRIX) 7/22/92 while : do sleep 2 echo -n " Are you ready? (y/n): " read X case "$X" in [yy]*) break done % esac
24 129 client server C Unix. /* File: un_dgr_server.c */ #include <sys/types.h> /* For sockets */ #include <sys/socket.h> /* For sockets */ #include <sys/un.h> /* For Unix sockets */ #include <stdio.h> /* For I/O */ main(int argc, char *argv[]) /* Server with Unix datagram sockets */ { int n, sock, serverlen, clientlen char buf[256] struct sockaddr_un server, client struct sockaddr *serverptr, *clientptr if (argc < 2) { /* Check if socket filename is given */ printf("please give the socket filename\n") exit(1) } if ((sock = socket(af_unix, SOCK_DGRAM, 0)) < 0) { /* Create socket */ perror("socket") exit(1) } server.sun_family = AF_UNIX /* Unix domain */ strcpy(server.sun_path, argv[1]) /* My Unix address */ unlink(argv[1]) /* Remove socket filename if it exists */ serverptr = (struct sockaddr *) &server serverlen = sizeof server if (bind(sock, serverptr, serverlen) < 0) { /* Bind socket to an address */ perror("bind") exit(1) } printf("waiting for data to ping\n") clientptr = (struct sockaddr *) &client clientlen = sizeof client while(1) { bzero(buf, sizeof buf) /* Initialize buffer */ if ((n = recvfrom(sock, buf, sizeof buf, 0, clientptr, &clientlen)) < 0) { perror("recvfrom") exit(1) } /* Receive message */ printf("received from %s: %s\n", client.sun_path, buf) if (sendto(sock, buf, n, 0, clientptr, clientlen) < 0) { perror("sendto") exit(1) } } } /* Send message */
25 130 /* File: un_dgr_client.c */ #include <sys/types.h> /* For sockets */ #include <sys/socket.h> /* For sockets */ #include <sys/un.h> /* For Unix sockets */ #include <stdio.h> /* For I/O */ main(int argc, char *argv[]) /* Client with Unix datagram sockets */ { int sock, serverlen, clientlen char buf[256], sname[20] struct sockaddr_un server, client struct sockaddr *serverptr, *clientptr if (argc < 2) { /* Check if socket filename is given */ printf("please give the socket filename\n") exit(1) } if ((sock = socket(af_unix, SOCK_DGRAM, 0)) < 0) { /* Create socket */ perror("socket") exit(1) } server.sun_family = AF_UNIX /* Unix domain */ strcpy(server.sun_path, argv[1]) /* Server's Unix address */ serverptr = (struct sockaddr *) &server serverlen = sizeof server sprintf(sname, "s%d", getpid()) /* Create my socket filename (=PID) */ client.sun_family = AF_UNIX /* Unix domain */ strcpy(client.sun_path, sname) /* My Unix address */ clientptr = (struct sockaddr *) &client clientlen = sizeof client if (bind(sock, clientptr, clientlen) < 0) { /* Bind socket to an address */ perror("bind") exit(1) } while (gets(buf)!= NULL) { /* Read continuously messages from stdin */ if (sendto(sock, buf, strlen(buf)+1, 0, serverptr, serverlen) < 0) { perror("sendto") exit(1) } /* Send message */ bzero(buf, sizeof buf) /* Initialize buffer */ if (recvfrom(sock, buf, sizeof buf, 0, serverptr, &serverlen) < 0) { perror("recvfrom") exit(1) } /* Receive message */ printf("%s\n", buf) } unlink(sname) } /* Remove my socket filename */
26 131 % un_dgr_server dgr_socket Waiting for data to ping Received from s3520: 4.1 ULTRIX 7/2/90 Received from s3520: tset -I -Q Received from s3520: set mail=/usr/spool/mail/root Received from s3520: set prompt="# " ^C% rm dgr_socket % % cat /.proto...login un_dgr_client dgr_socket 4.1 ULTRIX 7/2/90 tset -I -Q set mail=/usr/spool/mail/root set prompt="# " %
Topic 5: Sockets * K24: Systems Programming Instructor: Mema Roussopoulou
Topic 5: Sockets * K24: Systems Programming Instructor: Mema Roussopoulou Επικοινωνία διεργασιών σε διαφορετικούς υπολογιστές Έχουµε δει (ή θα δούµε) διαδιεργασιακή επικοινωνία στο ίδιο µηχάνηµα Μέσω αρχείων
Διαβάστε περισσότεραΥποδοχείς (Sockets) Προγραμματισμός II 1
Υποδοχείς (Sockets) Προγραμματισμός II 1 lalis@inf.uth.gr Υποδοχείς Ειδικές δομές διαδιεργασιακής επικοινωνίας Προσπελάζονται μέσω περιγραφέων αρχείων μπορεί να χρησιμοποιηθούν οι read, write, close μπορεί
Διαβάστε περισσότεραΝτίρλης Νικόλαος- ΕΤΥ 3ο ΦΡΟΝΤΙΣΤΗΡΙΟ ΠΑΡΑΣΚΕΥΗ 25 ΟΚΤΩΒΡΙΟΥ 2013 ΑΙΘΟΥΣΑ Β4
Ντίρλης Νικόλαος- ΕΤΥ 3ο ΦΡΟΝΤΙΣΤΗΡΙΟ ΠΑΡΑΣΚΕΥΗ 25 ΟΚΤΩΒΡΙΟΥ 2013 ΑΙΘΟΥΣΑ Β4 1 Διαχείριση εργασιών fork(), exit(), exec() (βλ 2 ο Φροντ.) Επικοινωνία διεργασιών signals (βλ 2 ο Φροντ.) sockets και client/server,
Διαβάστε περισσότεραΠρογραμματισμός με BSD Sockets σε περιβάλλον Linux
Προγραμματισμός με BSD Sockets σε περιβάλλον Linux Εργαστήριο Λειτουργικών Συστημάτων 8ο εξάμηνο, ΣΗΜΜΥ Εργαστήριο Υπολογιστικών Συστημάτων (CSLab) Απρίλιος 2016 Περίγραμμα παρουσίασης 1 Εισαγωγή 2 Δικτυακά
Διαβάστε περισσότεραΔίκτυα Επικοινωνιών ΙΙ: Network Programming TCP Sockets
Δίκτυα Επικοινωνιών ΙΙ: Network Programming TCP Sockets Δρ. Απόστολος Γκάμας Διδάσκων 407/80 gkamas@uop.gr Δίκτυα Επικοινωνιών ΙΙ Διαφάνεια 1 1 Δικτυακός Προγραμματισμός Βασικές Έννοιες: IP addresses,
Διαβάστε περισσότεραΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ
ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 1999-2000 ΜΑΘΗΜΑ : ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΔΑΣΚΩΝ : Θ. ΑΠΟΣΤΟΛΟΠΟΥΛΟΣ ΥΛΟΠΟΙΗΣΗ ΕΦΑΡΜΟΓΗΣ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ CLIENT-SERVER(πελάτη-εξυπηρετητή)
Διαβάστε περισσότεραΔικτυακός Προγραμματισμός (Sockets Programming) Εργαστήριο Γ Εξάμηνο, Τμήμα Πληροφορικής Πανεπιστήμιο Θεσσαλίας
Δικτυακός (Sockets Programming) Εργαστήριο Γ Εξάμηνο, Τμήμα Πληροφορικής Πανεπιστήμιο Θεσσαλίας Δήλωση Οι διαφάνειες βασίζονται στα βιβλία: (1) Δικτυακός, Douglas E. Comer, David L. Stevens, Εκδόσεις ΙΩΝ,
Διαβάστε περισσότεραΕργαστήριο Δικτύων Υπολογιστών
Εργαστήριο Δικτύων Υπολογιστών 3 η Διάλεξη: Δικτυακός Προγραμματισμός Unix Socket programming Μοντέλο client-server O βασικός τύπος δικτυακών εφαρμογών είναι client - server H σχέση server και client μπορεί
Διαβάστε περισσότεραΕπικοινωνία Client/Server Υποδοχές
Επικοινωνία Client/Server Υποδοχές Χάρης Μανιφάβας Τμήμα Εφ. Πληροφορικής & Πολυμέσων ΤΕΙ Κρήτης Επικοινωνία με Υποδοχές 1 Ορισμός των Υποδοχών (sockets) Τα sockets προσφέρουν μια γενικευμένη ικανότητα
Διαβάστε περισσότεραΛειτουργικά Συστήματα
Λειτουργικά Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:09 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών
Διαβάστε περισσότεραΖητήματα Σχεδίασης Λογισμικού Πελάτη
Ζητήματα Σχεδίασης Λογισμικού Πελάτη Διαδικτυακός και Ταυτόχρονος Προγραμματισμός 1 Αναγνώριση Τοποθεσίας Εξυπηρετητή Για την αναγνώριση της διεύθυνσης και της θύρας ενός εξυπηρετητή ο πελάτης μπορεί να
Διαβάστε περισσότεραSocket Application Programming Interface
Socket Application Programming Interface Εισαγωγή Το socket είναι ένας τύπος διεπαφής μεταξύ των προγραμμάτων εφαρμογής και του λογισμικού πρωτοκόλλων Είναι ευρέως διαθέσιμο για να διασφαλίζεται η μεταφερσιμότητα
Διαβάστε περισσότεραΔικτυακός προγραμματισμός
Δικτυακός προγραμματισμός (hands on) Εργαστήριο Δικτύων Υπολογιστών 2014-2015 Τμήμα Μηχανικών Η/Υ και Πληροφορικής Μοντέλο client-server O βασικός τύπος δικτυακών εφαρμογών είναι client - server H σχέση
Διαβάστε περισσότεραΕγχειρίδιο Συναρτήσεων. Socket *sopen(const int type, const int protocol, const char *host, const char *service)
Socket *sopen(const int type, const int protocol, const char *host, const char *service) Στην περίπτωση ενός client, δημιουργεί μια νέα σύνδεση και κατασκευάζει μια δομή Socket που σχετίζεται με αυτή Σε
Διαβάστε περισσότερα4 η ιάλεξη: Signals UDP Sockets
Εργαστήριο ικτύων Υπολογιστών 4 η ιάλεξη: ικτυακός Προγραμματισμός Signals UDP Sockets TCP sockets και signals Όταν σε ένα TCP server κάνουμε fork (γεννάμε διεργασίες-παιδιά servers για να εξυπηρετήσουμε
Διαβάστε περισσότεραΔίκτυα Επικοινωνιών ΙΙ: Network Programming UDP Sockets, Signals
Δίκτυα Επικοινωνιών ΙΙ: Network Programming UDP Sockets, Signals Δρ. Απόστολος Γκάμας Διδάσκων 407/80 gkamas@uop.gr Δίκτυα Επικοινωνιών ΙΙ Διαφάνεια 1 1 UDP vs TCP Το UDP είναι ένα connectionless, μη αξιόπιστο,
Διαβάστε περισσότεραΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ
ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΔΗΜΙΟΥΡΓΙΑ ΔΙΕΡΓΑΣΙΑΣ WEB-SERVER ΜΕ ΝΗΜΑΤΑ (THREADS) ΣΕ LINUX ΚΑΛΟΠΗΤΑΣ ΚΩΝΣΤΑΝΤΙΝΟΣ - 4190 ΣΒΕΝΤΖΟΥΡΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ - 4086 ΔΗΜΟΚΡΙΤΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΡΑΚΗΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΞΑΝΘΗΣ
Διαβάστε περισσότεραΔιαδιεργασιακή επικοινωνία (inter-process communication IPC) Προγραμματισμός II 1
Διαδιεργασιακή επικοινωνία (inter-process communication IPC) Προγραμματισμός II 1 lalis@inf.uth.gr Συνεργασία ανάμεσα σε διεργασίες Για ασφάλεια/ανεξαρτησία, το ΛΣ εξασφαλίζει πλήρη απομόνωση ανάμεσα στις
Διαβάστε περισσότεραΕργαστήριο Λειτουργικών Συστήματων 8ο εξάμηνο, Ακαδημαϊκή περίοδος
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ KΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ http://www.cslab.ece.ntua.gr Εργαστήριο
Διαβάστε περισσότεραΠρογραμματισμός συστημάτων UNIX/POSIX. Διαδιεργασιακή επικοινωνία: αγωγοί (IPC inter-process communication: pipes)
Προγραμματισμός συστημάτων UNIX/POSIX Διαδιεργασιακή επικοινωνία: αγωγοί (IPC inter-process communication: pipes) Επικοινωνία μεταξύ διεργασιών γονέα-παιδιού Κατά κάποιο τρόπο, θα δημιουργήσουμε ένα τύπο
Διαβάστε περισσότεραΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Διεργασίες και Νήματα Εργαστηριακές Ασκήσεις
ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Διεργασίες και Νήματα Εργαστηριακές Ασκήσεις Υλικό από: Modern Operating Systems Laboratory Exercises, Shrivakan Mishra Σύνθεση Κ.Γ. Μαργαρίτης, Τμήμα Εφαρμοσμένης Πληροφορικής, Πανεπιστήμιο
Διαβάστε περισσότεραΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ & ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Εισαγωγή στον προγραµµατισµό των Sockets στο UNIX Γ. ΠΑΠΑΚΩΝΣΤΑΝΤΙΝΟΥ
Διαβάστε περισσότεραύο μηχανισμοί απαιτούνται: 1. Μία μέθοδος για τη δημιουργία διεργασιών
Υπολογισμός με βάση το πέρασμα μηνυμάτων Προγραμματισμός με πέρασμα μηνυμάτων ύο μηχανισμοί απαιτούνται: 1. Μία μέθοδος για τη δημιουργία διεργασιών που θα εκτελούνται σε διαφορετικούς υπολογιστές. 2.
Διαβάστε περισσότεραΥλοποίηση Κατανεμημένης Εφαρμογής με Χρήση των Υπηρεσιών των Πρωτοκόλλων ΤCP και UDP
ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΣΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Μάθημα: Θέμα Εργασίας: Υλοποίηση Κατανεμημένης Εφαρμογής με Χρήση των Υπηρεσιών των Πρωτοκόλλων
Διαβάστε περισσότεραιαδικτυακές Εφαρµογές
ιαδικτυακές Εφαρµογές µε Java2 Στοιχεία ικτυακής Επικοινωνίας Όροι IP address 32bit αριθµός που χρησιµοποιείται από το Internet Protocol για την παράδοση δεδοµένων στο σωστό υπολογιστή στο δίκτυο. Port
Διαβάστε περισσότεραTopic 5: Sockets. *Ευχαριστίες στους Jim Kurose, Keith Ross, Τάκη Σταµατόπουλο, Αλέξη ελή, και Αντώνη ελιγιαννάκη
Topic 5: Sockets *Ευχαριστίες στους Jim Kurose, Keith Ross, Τάκη Σταµατόπουλο, Αλέξη ελή, και Αντώνη ελιγιαννάκη Επικοινωνία διεργασιών σε διαφορετικούς υπολογιστές Έχουµε δει(ή θαδούµε) διαδιεργασιακή
Διαβάστε περισσότεραΑγωγοί/Σωλήνες (Pipes) Προγραμματισμός II 1
Αγωγοί/Σωλήνες (Pipes) Προγραμματισμός II 1 lalis@inf.uth.gr Τι είναι ένας αγωγός; Μηχανισμός/συσκευή επικοινωνίας διεργασιών Μετάδοση μιας ροής από bytes (μονής κατεύθυνσης) First-in-first-out (FIFO):
Διαβάστε περισσότεραΔιδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 23: Εισαγωγή στην Δικτύωση (Networking) Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Διευθύνσεις και Θύρες - Sockets και ServerSockets Διδάσκων: Παναγιώτης Ανδρέου ΕΠΛ233 Αντικειμενοστρεφής
Διαβάστε περισσότερα(C) 2010 Pearson Education, Inc. All rights reserved.
Connectionless transmission with datagrams. Connection-oriented transmission is like the telephone system You dial and are given a connection to the telephone of fthe person with whom you wish to communicate.
Διαβάστε περισσότεραΕπικοινωνία Διεργασιών στο Internet με POSIX Sockets
Επικοινωνία Διεργασιών στο Internet με POSIX Sockets ΣΤ Εξάμηνο, Κατεύθυνση Μηχανικών Δικτύων Τ.Ε. Τμήμα Μηχανικών Πληροφορικής Τ.Ε. ΤΕΙ Στερεάς Ελλάδας plam@inf.teilam.gr, 2016 Δήλωση Οι διαφάνειες βασίζονται
Διαβάστε περισσότεραΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ II. Υφαντόπουλος Νικόλαος Υποψήφιος Διδάκτορας Contact:
ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ II Υφαντόπουλος Νικόλαος Υποψήφιος Διδάκτορας Contact: nifantop@unipi.gr Περιεχόμενα ενότητας Διεργασίες Κλήσεις δημιουργίας και τερματισμού διεργασιών Επικοινωνία διεργασιών μέσω
Διαβάστε περισσότεραΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ
ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κεφάλαιο 6 Επιμέλεια: Βασίλης Παλιουράς, Αναπληρωτής Καθηγητής Ευάγγελος Δερματάς, Αναπληρωτής Καθηγητής Σταύρος Νούσιας, Βοηθός Ερευνητή Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών
Διαβάστε περισσότεραΕργαστήριο 5 fork(), exec(), signals
Εργαστήριο 5 fork(), exec(), signals Στο εργαστήριο θα μελετηθούν: Παραδείγματα χρήσης των συναρτήσεων fork και exec Συνάρτηση waitpid Συνάρτηση WIFEXITED Συνάρτηση WEXITSTATUS Παράδειγμα χρήσης σημάτων
Διαβάστε περισσότεραΕκφωνήσεις ασκήσεων εργαστηρίου 1
Τμήμα Μηχανικών Πληροφορικής Τ.Ε. Σχολή Τεχνολογικών Εφαρμογών Ακαδημαϊκό έτος 2016-2017 ΤΕΙ Ηπείρου - Άρτα Κατανεμημένα και Παράλληλα Συστήματα (εργαστήριο) Γκόγκος Χρήστος Εκφωνήσεις ασκήσεων εργαστηρίου
Διαβάστε περισσότεραΕικονική Μνήμη (Virtual Memory) Προγραμματισμός II 1
Εικονική Μνήμη (Virtual Memory) Προγραμματισμός II 1 lalis@inf.uth.gr Μνήμη και επικοινωνία διεργασιών Κάθε διεργασία έχει δική της ιδιωτική μνήμη Μια διεργασία δεν μπορεί να γράψει/διαβάσει από/σε θέσεις
Διαβάστε περισσότεραΕισαγωγή στο περιβάλλον προγραμματισμού του εργαστηρίου. Λειτουργικά Συστήματα Εργαστήριο Υπολογιστικών Συστημάτων ΕΜΠ
Εισαγωγή στο περιβάλλον προγραμματισμού του εργαστηρίου Λειτουργικά Συστήματα Εργαστήριο Υπολογιστικών Συστημάτων ΕΜΠ Διαδικαστικά Λογαριασμοί (Accounts) Χρήστης: oslabxyy Αλλαγή password: yppasswd Μηχανήματα
Διαβάστε περισσότεραΑΤΜ PROJECT ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ 2011-2012. Άννα Τριανταφύλλου ΑΕΜ : 456. επιβλέπων καθηγητής: Μηνάς Δασυγένης
Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΑΤΜ PROJECT Άννα Τριανταφύλλου ΑΕΜ : 456 επιβλέπων καθηγητής: Μηνάς Δασυγένης Περιεχόμενα 1. 2. 3.
Διαβάστε περισσότεραΦροντιςτήριο. Linked-List
Φροντιςτήριο Linked-List 1 Linked List Μια linked list είναι μια ακολουθία από ςυνδεδεμένουσ κόμβουσ Κάθε κόμβοσ περιέχει τουλάχιςτον Μια πληροφορία (ή ένα struct) Δείκτη ςτον επόμενο κόμβο τησ λίςτασ
Διαβάστε περισσότεραΠανεπιστήμιο Θεσσαλίας Τμήμα Πληροφορικής
Πανεπιστήμιο Θεσσαλίας Τμήμα Πληροφορικής ΕΥ311-Διαδικτυακός και Ταυτόχρονος Προγραμματισμός Εργαστήριο: Παραδείγματα δημιουργίας διεργασιών στο Linux Ένα πρόγραμμα (το στιγμιότυπο της εκτέλεσης του οποίου
Διαβάστε περισσότεραΙ Αρχεία δεδομένων, μέρος δεύτερο: δυαδικά αρχεία ΙΙ Δομές δεδομένων (struct)
Ι Αρχεία δεδομένων, μέρος δεύτερο: δυαδικά αρχεία ΙΙ Δομές δεδομένων (struct) Αρχεία Το γενικό πλαίσιο: data stream (ρεύμα δεδομένων). stdin, stdout, stderr data stream ως προς τα δεδομένα βάσει προσπέλασης
Διαβάστε περισσότεραΠρογραµµατισµός ικτύων Ε-01
Προγραµµατισµός ικτύων Ε-01 3η ιάλεξη ιδάσκων: Νίκος Ντάρµος [http://www.cs.uoi.gr/~ntarmos/courses/networkprogramming/] Τµήµα Πληροφορικής Πανεπιστήµιο Ιωαννίνων Στο σηµερινό µάθηµα...
Διαβάστε περισσότεραΕπικοινωνία Client/Server Υποδοχές (Παραδείγματα)
Επικοινωνία Client/Server Υποδοχές (Παραδείγματα) Χάρης Μανιφάβας Τμήμα Εφ. Πληροφορικής & Πολυμέσων ΤΕΙ Κρήτης Επικοινωνία με Υποδοχές (Παραδείγματα) 1 Συναρτήσεις Ανάκτησης Ονομάτων Επικοινωνία με Υποδοχές
Διαβάστε περισσότεραHY335 4ο Φροντιστήριο
HY335 4ο Φροντιστήριο Δημιουργία ενός τοπικού δικτύου και επίδειξη προγραμμάτων τύπου client / server για TCP και UDP Fontas Fafoutis Ilias Tsompanidis Δημιουργία
Διαβάστε περισσότεραΕισαγωγή στο περιβάλλον προγραμματισμού του εργαστηρίου
1 Εισαγωγή στο περιβάλλον προγραμματισμού του εργαστηρίου Λειτουργικά Συστήματα 7ο εξάμηνο ΣΗΜΜΥ ακ έτος 2015-2016 http://wwwcslabecentuagr/courses/os CSLab National Technical University of Athens Εργαστήριο
Διαβάστε περισσότεραi M-1 1. ij f(i, j) N-1. (pixel) 2. M N (x, y) (x, y ) = 256. R(x, y), G(x, y), B(x, y)
D4 2 2. (pixel) 2 ( ) M N (x, y) (x, y ) ( )f(x, y) j N- i j i f(i, j) M-. ij f(i, j) 8 2 8 = 256, 2 2 f(x, y) 3,, R(x, y), G(x, y), B(x, y) 256 2 2.2 ( ) JPEG (Joint Photographic Experts Group), GIF (Graphics
Διαβάστε περισσότεραΕικονική Μνήμη (Virtual Memory) Προγραμματισμός II 1
Εικονική Μνήμη (Virtual Memory) Προγραμματισμός II 1 lalis@inf.uth.gr Μνήμη και επικοινωνία διεργασιών Κάθε διεργασία έχει δική της ιδιωτική μνήμη Μια διεργασία δεν μπορεί να γράψει/διαβάσει από/σε θέσεις
Διαβάστε περισσότεραΗY335: Δίκτυα Υπολογιστών Χειμερινό Εξάμηνο Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης Διδάσκουσα: Μαρία Παπαδοπούλη
ΗY335: Δίκτυα Υπολογιστών Χειμερινό Εξάμηνο 2012-2013 Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης Διδάσκουσα: Μαρία Παπαδοπούλη Project 2012-2013 Υλοποίηση ενός chat server-client Παράδοση: 7/2/2013
Διαβάστε περισσότεραΔιάλεξη 18η: Διαχείρηση Αρχείων
Διάλεξη 18η: Διαχείρηση Αρχείων Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Πρατικάκης (CSD) Αρχεία CS100, 2015-2016 1 / 24 Η βιβλιοθήκη Εισόδου/Εξόδου Στο stdioh
Διαβάστε περισσότεραΖητήματα Σχεδίασης Λογισμικού Εξυπηρετητή
Ζητήματα Σχεδίασης Λογισμικού Εξυπηρετητή Διαδικτυακός και Ταυτόχρονος Προγραμματισμός 1 Ταυτόχρονοι και Επαναληπτικοί Εξυπηρετητές Επαναληπτικός εξυπηρετητής: επεξεργάζεται μόνο μία αίτηση τη φορά. Ταυτόχρονος
Διαβάστε περισσότεραUNIX System Programming
UNIX System Programming Processes Objectives look at how to program UNIX processes fork( ), wait( ) Overview 1. What is a Process? 2. fork() 3. wait() 4. Process Data 1. What is a Process? A process is
Διαβάστε περισσότεραΕπίπεδο Μεταφοράς. (ανεβαίνουμε προς τα πάνω) Εργαστήριο Δικτύων Υπολογιστών Τμήμα Μηχανικών Η/Υ και Πληροφορικής
Επίπεδο Μεταφοράς (ανεβαίνουμε προς τα πάνω) Εργαστήριο Δικτύων Υπολογιστών 2014-2015 Τμήμα Μηχανικών Η/Υ και Πληροφορικής Επίπεδο Μεταφοράς(Transport layer) Επίπεδο εφαρμογής (Application layer): Συντονισμός
Διαβάστε περισσότεραΚ. Στάµος Μηχανικός Η/Υ και Πληροφορικής, Πανεπιστήµιο Πατρών Μηχανικός Έρευνας και Ανάπτυξης, ΕΜ6/ΕΑΙΤΥ
σελίδα 1 Κ. Στάµος Μηχανικός Η/Υ και Πληροφορικής, Πανεπιστήµιο Πατρών Μηχανικός Έρευνας και Ανάπτυξης, ΕΜ6/ΕΑΙΤΥ Περιεχόµενα Αναφορά στις αλλαγές που επιφέρει το IPv6 στην ανάπτυξη δικτυακών εφαρµογών
Διαβάστε περισσότεραΑρχές Προγραμματισμού
Αρχές Προγραμματισμού https://eclass.upatras.gr/courses/ee806/index.php Βασίλης Παλιουράς paliuras@ece.upatras.gr ΠΕΡΙΣΣΟΤΕΡΑ ΓΙΑ ΑΡΧΕΙΑ 1 int main ( ) { int i; int num; FILE *data ; if ((data = fopen
Διαβάστε περισσότεραΕργαστήριο ΔΙΕΡΓΑΣΙΕΣ - ΔΙΑΧΕΙΡΙΣΗ
Εργαστήριο ΔΙΕΡΓΑΣΙΕΣ - ΔΙΑΧΕΙΡΙΣΗ Εισαγωγή Σκοπός τόσο αυτού του εργαστηρίου, όσο και των εργαστηρίων που ακολουθούν, είναι να γνωρίσουμε τους τρόπους δημιουργίας και διαχείρισης των διεργασιών (processes)
Διαβάστε περισσότεραΝτίρλης Νικόλαος- ΕΤΥ 2 ο Φροντιστήριο Παρασκευή, 18/10/2013 Β4. Λειτουργικά Συστήματα- Φροντιστήριο 2
Ντίρλης Νικόλαος- ΕΤΥ 2 ο Φροντιστήριο Παρασκευή, 18/10/2013 Β4 Φροντιστήριο 2 1 Λειτουργικό Σύστημα -> Multitasking Κάθε διεργασία μπορεί να ειδωθεί σαν μία δέσμη στοιχείων που διατηρούνται από τον πυρήνα
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Ενδεικτικές Απαντήσεις Εξετάσεων Β' Περιόδου Θέµα 1. (α')
ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Ενδεικτικές Απαντήσεις Εξετάσεων Β' Περιόδου 2011 Θέµα 1 (α') Η άποψη που εκφράζεται στην εν λόγω πρόταση είναι λανθασµένη. Η πιθανή βελτίωση της ταχύτητας εκτέλεσης των προγραµµάτων
Διαβάστε περισσότεραΔημιουργία & Τερματισμός Διεργασιών. Προγραμματισμός II 1
Δημιουργία & Τερματισμός Διεργασιών Προγραμματισμός II 1 lalis@inf.uth.gr Δημιουργία νέας διεργασίας pid_t fork() Η fork δεν έχει παραμέτρους Δημιουργεί μια νέα διεργασία που είναι ένα αντίγραφο της διεργασίας
Διαβάστε περισσότεραΠρογραµµατισµός ικτύων Ε-01
Προγραµµατισµός ικτύων Ε-01 4η ιάλεξη ιδάσκων: Νίκος Ντάρµος [http://www.cs.uoi.gr/~ntarmos/courses/networkprogramming/] Τµήµα Πληροφορικής Πανεπιστήµιο Ιωαννίνων Στο σηµερινό µάθηµα...
Διαβάστε περισσότεραΕργαστήριο Λειτουργικών Συστημάτων 8ο εξάμηνο, Ακαδημαϊκή περίοδος
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ KΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ http://www.cslab.ece.ntua.gr Εργαστήριο
Διαβάστε περισσότεραΚλείδωμα αρχείων (file locking) Προγραμματισμός II 1
Κλείδωμα αρχείων (file locking) Προγραμματισμός II 1 lalis@inf.uth.gr Κλείδωμα αρχείων Οι διεργασίες που προσπελάζουν ένα αρχείο μέσω ξεχωριστών περιγραφέων, μπορούν να γράψουν / διαβάσουν τα περιεχόμενα
Διαβάστε περισσότεραΔιάλεξη 14: Διεργασίες: Έλεγχος & Σήματα (Processes: Control & Signals)
ΕΠΛ371 - Προγραμματισμός Συστημάτων Διάλεξη 14: Διεργασίες: Έλεγχος & Σήματα (Processes: Control & Signals) (Κεφάλαιο 8,10 - Stevens & Rago) Δημήτρης Ζεϊναλιπούρ 14-1 Περιεχόμενο Διάλεξης A. Η οικογένεια
Διαβάστε περισσότεραΠρογραμματισμός Ι. Είσοδος/Έξοδος. Δημήτρης Μιχαήλ. Ακ. Έτος 2009-2010. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο
Προγραμματισμός Ι Είσοδος/Έξοδος Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2009-2010 Είσοδος/Έξοδος Μέχρι τώρα όποτε θέλαμε να διαβάσουμε χρησιμοποιούσαμε πάντα
Διαβάστε περισσότεραΔιαχείριση Διεργασιών και Διαδιεργασιακή Επικοινωνία
Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων 2 η Εργαστηριακή Άσκηση: Διαχείριση Διεργασιών και Διαδιεργασιακή Επικοινωνία Λειτουργικά
Διαβάστε περισσότεραΛειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκό Έτος
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ KΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ http://www.cslab.ece.ntua.gr Λειτουργικά
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Ενδεικτικές Απαντήσεις Εξετάσεων Α' Περιόδου Θέµα 1. (α') 2 - ii 3 - iii 4 - iv
ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Ενδεικτικές Απαντήσεις Εξετάσεων Α' Περιόδου 2011 Θέµα 1 (α') 1 - i 2 - ii 3 - iii 4 - iv 5 - v 6 - vi 7 - vii 8 - viii 9 - ix 10 - x Το αποτέλεσµα είναι η αντιστοιχία των
Διαβάστε περισσότεραΣημειώσεις όγδοης εβδομάδας
Σημειώσεις όγδοης εβδομάδας Για να την δημιουργία σειριακών αρχείων, χρησιμοποιείται η fopen(filename, w ). Το αρχείο δημιουργείται στον ίδιο φάκελο που τρέχει το εκτελέσιμο πρόγραμμα. Το παρακάτω πρόγραμμα,
Διαβάστε περισσότεραιαφάνειες παρουσίασης #6 (β)
ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ http://www.softlab.ntua.gr/~nickie/courses/progtech/ ιδάσκοντες: Γιάννης Μαΐστρος (maistros@cs.ntua.gr) Στάθης Ζάχος (zachos@cs.ntua.gr) (nickie@softlab.ntua.gr) ιαφάνειες παρουσίασης
Διαβάστε περισσότεραΔιαχείριση Διεργασιών και Διαδιεργασιακή Επικοινωνία
Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων 2 η Εργαστηριακή Άσκηση: Διαχείριση Διεργασιών και Διαδιεργασιακή Επικοινωνία Λειτουργικά
Διαβάστε περισσότεραΠΛΗ111. Ανοιξη Μάθηµα 1 ο Ανασκόπηση της Γλώσσας Προγραµµατισµού C. Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης
ΠΛΗ111 οµηµένος Προγραµµατισµός Ανοιξη 2005 Μάθηµα 1 ο Ανασκόπηση της Γλώσσας Προγραµµατισµού C Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης Ανασκόπηση της C είκτες Πίνακες
Διαβάστε περισσότεραFile Management και I/O στο UNIX
File Management και I/O στο UNIX Λειτουργικά Συστήματα Ντίρλης Νικόλαος- ΕΤΥ Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πάτρας Συστήματα 2013-2014 1 Εισαγωγή Ένα από τα βασικά στοιχεία της επιστήμης της Πληροφορικής
Διαβάστε περισσότεραΔημιουργία & Τερματισμός Διεργασιών. Προγραμματισμός II 1
Δημιουργία & Τερματισμός Διεργασιών Προγραμματισμός II 1 lalis@inf.uth.gr Δημιουργία νέας διεργασίας pid_t fork() Η fork δεν έχει παραμέτρους Δημιουργεί μια νέα διεργασία που είναι ένα αντίγραφο της διεργασίας
Διαβάστε περισσότεραΕισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011
Εισαγωγή στον Προγραµµατισµό Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011 Hello World /* Αρχείο hello.c * Εµφανίζει στην οθόνη το * µήνυµα hello world */ #include
Διαβάστε περισσότεραΠρογραμματισμός Υπολογιστών με C++
Προγραμματισμός Υπολογιστών με C++ ( 2012-13 ) 19η διάλεξη Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Τι θα ακούσετε σήμερα Βασικές διαφορές της C από τη C++. Απλά παραδείγματα προγραμμάτων C.
Διαβάστε περισσότεραMusicOnCloud: Μια cloud-based υπηρεσία online streaming μουσικής
MusicOnCloud: Μια cloud-based υπηρεσία online streaming μουσικής ΗΥ - 335α Χειμερινό εξάμηνο 2014-2015 Διδάσκουσα: Παπαδοπούλη Μαρία Υπεύθυνος βοηθός: Σουρλίγκας Μανώλης surligas@csd.uoc.gr 7 Δεκεμβρίου
Διαβάστε περισσότεραHancock. Ζωγραφάκης Ιωάννης Εξαρχάκος Νικόλαος. ΕΠΛ 428 Προγραμματισμός Συστημάτων
Hancock Ζωγραφάκης Ιωάννης Εξαρχάκος Νικόλαος Χ346339 Τ911778 ΕΠΛ 428 Προγραμματισμός Συστημάτων Ιστορική Αναδρομή Δημιουργήθηκε από την εταιρεία ΑΤ&Τ LAB Αφορμή δημιουργίας: Η ανάγκη για καθαρό και αποδοτικό
Διαβάστε περισσότεραΠ. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7
Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 Προηγούµενη ιάλεξη Έννοια της
Διαβάστε περισσότεραΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ
ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κεφάλαιο 15 Επιμέλεια: Βασίλης Παλιουράς, Αναπληρωτής Καθηγητής Ευάγγελος Δερματάς, Αναπληρωτής Καθηγητής Σταύρος Νούσιας, Βοηθός Ερευνητή Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών
Διαβάστε περισσότεραΠ. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7
Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 ❶ Προετοιµασία για το 1 ο Εργαστήριο
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ
Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Αλφαριθμητικά Αλφαριθμητικά (strings) Ένα αλφαριθμητικό είναι μια ακολουθία αλφαβητικών
Διαβάστε περισσότεραΠΛΗ111. Ανοιξη Μάθηµα 5 ο. Ουρά. Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης
ΠΛΗ οµηµένος Προγραµµατισµός Ανοιξη 5 Μάθηµα 5 ο Ουρά Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης Ανασκόπηση Αφηρηµένος Τύπος εδοµένων Ουρά Υλοποίηση µε Κυκλικό Πίνακα Υλοποίηση
Διαβάστε περισσότεραοµές (structures) Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Πίνακες δοµών, δείκτες σε δοµές, και αυτοαναφορικές δοµές.
οµές (structures) Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Πίνακες δοµών, δείκτες σε δοµές, και αυτοαναφορικές δοµές. ΕΠΛ 132 Αρχές Προγραµµατισµού ΙΙ 1 Παράδειγµα Πρόβληµα: Να γράψετε
Διαβάστε περισσότεραΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΜΑΘΗΜΑ: ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΣΗΜΕΙΩΣΕΙΣ. Αρχεία και Μεταδεδομένα
ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΜΑΘΗΜΑ: ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Αρχεία και Μεταδεδομένα ΣΗΜΕΙΩΣΕΙΣ Κάθε αρχείο χαρακτηρίζεται και αναφέρεται από ένα αριθμό
Διαβάστε περισσότεραΕισαγωγή. E-03: Λειτουργικά Συστήµατα ΙΙ 6. Εαρινό Εξάµηνο SUN RPC. Κλήση Αποµακρυσµένων ιαδικασιών (RPC) Σύνδεση: Port Mapper.
Εισαγωγή Ε-03: Λειτουργικά Συστήµατα ΙΙ Εαρινό Εξάµηνο 2005-06 Sun RPC MPI «Sun RPC & MPI» ρ. Παναγιώτης Χατζηδούκας (Π..407/80) E-03: Λειτουργικά Συστήµατα ΙΙ 1 E-03: Λειτουργικά Συστήµατα ΙΙ 2 Κλήση
Διαβάστε περισσότεραΕργαστήριο Λειτουργικών Συστημάτων. Inside System Calls
Εργαστήριο Λειτουργικών Συστημάτων Inside System Calls Ιεράρχηση των επιπέδων του Minix Οι user processes χρησιμοποιούν το 2ο επίπεδο για να αξιοποιήσουν τις λειτουργίες του Λ.Σ. Οι shared libraries κάνουν
Διαβάστε περισσότεραΗ γλώσσα προγραμματισμού C
Η γλώσσα προγραμματισμού C Χειρισμός χαρακτήρων, συμβολοσειρές Συμβολοσειρές Συμβολοσειρά ονομάζουμε μια οποιαδήποτε ακολουθία αλφαριθμητικών χαρακτήρων: «Κώστας», «Κώστας Βασιλάκης», «Δαιδάλου 23» Στην
Διαβάστε περισσότεραΑνάπτυξη και Σχεδίαση Λογισμικού
Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Δυναμική Κατανομή Μνήμης Δυναμική εκχώρηση μνήμης Σωρός Συναρτήσεις malloc(), calloc(), realloc(), free() Δυναμικές δομές
Διαβάστε περισσότεραΠρογραμματισμός Ι (ΗΥ120)
Προγραμματισμός Ι (ΗΥ120) Διάλεξη 18: Ο προεπεξεργαστής της C. Βασική ιδέα Ο προεπεξεργαστής (pre-proccesor) της C είναι ένα πρόγραμμα που εκτελείται και μετασχηματίζει τον πηγαίο κώδικα πριν αυτός δοθεί
Διαβάστε περισσότεραΚλείδωμα αρχείων (file locking) Προγραμματισμός II 1
Κλείδωμα αρχείων (file locking) Προγραμματισμός II 1 lalis@inf.uth.gr Κλείδωμα αρχείων Οι διεργασίες που προσπελάζουν ένα αρχείο μέσω ξεχωριστών περιγραφέων, μπορούν να γράψουν / διαβάσουν τα περιεχόμενα
Διαβάστε περισσότεραΠρογραμματισμό για ΗΜΥ
ΕΠΛ 034: Εισαγωγή στον Προγραμματισμό για ΗΜΥ Αχιλλέας Αχιλλέως, Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου Email: achilleas@cs.ucy.ac.cy Κεφάλαιο 3 Εισαγωγή στην C Θέματα ιάλεξης Σύνταξη και Σημασιολογία
Διαβάστε περισσότεραΠρογραμματισμός Η/Υ (ΤΛ2007 )
Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Πέμπτη (5 η ) τρίωρη διάλεξη. Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/
Διαβάστε περισσότεραΜεθόδων Επίλυσης Προβλημάτων
ΕΠΛ 032.3: 3: Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων Αχιλλέας Αχιλλέως, Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου Email: achilleas@cs.ucy.ac.cy Κεφάλαιο 14 Αλφαριθμητικές Σειρές Χαρακτήρων (Strings)
Διαβάστε περισσότεραΛύβας Χρήστος Αρχική επιµέλεια Πιτροπάκης Νικόλαος και Υφαντόπουλος Νικόλαος
ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ IΙ Λύβας Χρήστος chrislibas@ssl-unipi.gr Αρχική επιµέλεια Πιτροπάκης Νικόλαος και Υφαντόπουλος Νικόλαος >_ ΔΙΕΡΓΑΣΙΕΣ +- Με τον όρο διεργασία στο UNIX εννοούμε τη δυναμικη πράξη της
Διαβάστε περισσότεραΠ. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7
Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 Προηγούµενη ιάλεξη Προτάσεις,
Διαβάστε περισσότεραΕργαστήριο Λειτουργικών Συστημάτων 8ο εξάμηνο, Ακαδημαϊκή περίοδος
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ KΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ http://www.cslab.ece.ntua.gr Εργαστήριο
Διαβάστε περισσότεραWeb and HTTP. Βασικά Συστατικά: Web Server Web Browser HTTP Protocol
HTTP Protocol Web and HTTP Βασικά Συστατικά: Web Server Web Browser HTTP Protocol Web Servers (1/2) Ένα πρόγραμμα (λογισμικό) που έχει εγκατασταθεί σε ένα υπολογιστικό σύστημα (έναν ή περισσότερους υπολογιστές)
Διαβάστε περισσότεραTopic 4: Processes. *Ευχαριστίες στους Τάκη Σταµατόπουλο, Αλέξη ελή, και Αντώνη ελιγιαννάκη
Topic 4: Processes *Ευχαριστίες στους Τάκη Σταµατόπουλο, Αλέξη ελή, και Αντώνη ελιγιαννάκη ιεργασία (process) Στιγµιότυπο ενός προγράµµατος που εκτελείται Λειτουργικό φορτώνει πρόγραµµαστηµνήµη Ανάθεση
Διαβάστε περισσότεραΜετατροπή χαρακτήρων ASCII σε ακέραιο αριθµό (atoi) & Άνοιγµα αρχείου µέσα από τo QtSPIM, διάβασµα, και αποθήκευση του περιεχοµένου του στη µνήµη
Μετατροπή χαρακτήρων ASCII σε ακέραιο αριθµό (atoi) & Άνοιγµα αρχείου µέσα από τo QtSPIM, διάβασµα, και αποθήκευση του περιεχοµένου του στη µνήµη ( ιάλεξη 3) ιδάσκων: Γιώργος Ζάγγουλος Email: zaggoulos.george@ucy.ac.cy
Διαβάστε περισσότεραΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ
ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ Έλεγχος ροής Δομή επιλογής (if, switch) Δομές επανάληψης (while, do-while, for) Διακλάδωση
Διαβάστε περισσότεραΗ γλώσσα προγραμματισμού C
Η γλώσσα προγραμματισμού C Χειρισμός χαρακτήρων, συμβολοσειρές Συμβολοσειρές Συμβολοσειρά ονομάζουμε μια οποιαδήποτε ακολουθία αλφαριθμητικών χαρακτήρων: «Κώστας», «Κώστας Βασιλάκης», «Δαιδάλου 23» Στην
Διαβάστε περισσότεραΔιάλεξη 7: Συμβολοσειρές, Δείκτες και Παραδείγματα
Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου ΕΠΛ132 Αρχές Προγραμματισμού II Διάλεξη 7: Συμβολοσειρές, Δείκτες και Παραδείγματα (Κεφάλαιο 13, KNK-2ED) Δημήτρης Ζεϊναλιπούρ http://www.cs.ucy.ac.cy/courses/epl132
Διαβάστε περισσότερα