LU-LSP-b12:L11

From DiLab
Jump to: navigation, search

Praktiskais darbs #11

Uzrakstīt programmu, kas lasa no vairākiem failiem vienlaicīgi. Nolasītie dati jāizdrukā uz standarta izvadu.

Funkcijas:

  • select/poll/epoll

Makro:

  • FD_ZERO
  • FD_SET
  • FD_ISSET

Koda sākuma daļas paraugs:

#include <stdlib.h>
#include <termios.h>
#include <unistd.h>
#include <memory.h>
#include <sys/types.h>
#include <sys/select.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <inttypes.h>
#include <ctype.h>
#include <limits.h>
#include <time.h>
#include <stdbool.h>
#include <stdint.h>

#define FILENAME "a.txt"
#define WAIT_TIMEOUT 1

// nolasa datus no faila un drukā uz stdout
int readInput(int fd)
{
    char c;
    int ret = read(fd, &c, 1);
    if (ret == 1) {
        fputc(c, stdout);
    }
    return ret;
}

int main(void)
{
    int fileFD = open(FILENAME, O_RDONLY);
    if (fileFD == -1) {
        return -1;
    }

    //
    // TODO: papildināt!
    //
}

Iesniegšana

Iesūtīt C failu uz kursa asistenta e-pastu.