Giter Site home page Giter Site logo

server_client_filebacked_shared_memory's Introduction

README

Objective

The objective of this project is have the server to load a text file into file-backed shared memory which allows the client to change any lower case characters to upper case.

Included Files

The project includes the following files:

  • makefile
  • text-server.c
  • text-client.c
  • text-memory.c
  • README.md

Makefile

When make is executed in the terminal. The make file executes two commands.

gcc -o text-client text-client.c

gcc -o text-server text-server.c

When make clean is executed in the terminal. The make file removes any executable or intermediary build files created by make. It is done using the following command in bash.

rm -rf text-client text-server *.o

Server

To run the server a command in the following format must be entered.

./text-server

The server will start and display that it started.

Everytime a client connects:

  • The server will log the client's request, memory segment opening, filename, file closing, and memory closing.
  • If the server is successfully able to open the file, the it will send a signal to the client to make changes.

Client

A client can be started by entering a command in the following format.

./text-client dat/dante.txt

The client will start, parse text using four threads, and replace any lower-case characters with its upper-case version.

Everytime a client connects:

  • The client will send a filename to the server.
  • After the server is able to open the file and load the file into file-backed shared memory, the client starts the conversion process using threads.
  • The client uses 4 threads.

Header Files

For this project, text-memory.h is created primarily to contain any used libraries and globally defined values.

server_client_filebacked_shared_memory's People

Contributors

s-orug avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.