<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/"><rdf:Description rdf:about="https://repozitorij.uni-lj.si/IzpisGradiva.php?id=172690"><dc:title>Cross-Platform Client-Server Architecture</dc:title><dc:creator>Milanovski,	Hristijan	(Avtor)
	</dc:creator><dc:creator>Šter,	Branko	(Mentor)
	</dc:creator><dc:creator>Urh,	Filip	(Komentor)
	</dc:creator><dc:subject>inter-process communication</dc:subject><dc:subject>client–server architecture</dc:subject><dc:subject>sockets</dc:subject><dc:subject>events</dc:subject><dc:subject>shared memory</dc:subject><dc:description>The diploma thesis describes the complete process of creating a cross-platform,
multi-client, multi-threaded server architecture that works natively on both
Windows and Linux, as an improvement of the original implementation at
Tasking Labs d.o.o., which, at the time of writing, supported only a single
client natively on Windows. The implementation covers all communication
mechanisms required for multi-client, multi-threaded server interactions be-
tween client processes and the server process. It addresses the initial hand-
shake, the server’s listening and cleaning threads, the dispatching of requests
and their corresponding responses, as well as packet segmentation, open-
ing, and mapping through shared memory. In addition, the thesis discusses
the various approaches undertaken, including the use of synchronization ob-
jects, mutexes, native handles when necessary, and sockets, as well as the
differences between the Windows and Linux APIs, which had to be care-
fully managed to ensure a uniform, portable C++ interface that can be used
consistently across the company’s codebase and products.</dc:description><dc:date>2025</dc:date><dc:date>2025-09-10 19:30:00</dc:date><dc:type>Diplomsko delo/naloga</dc:type><dc:identifier>172690</dc:identifier><dc:language>sl</dc:language></rdf:Description></rdf:RDF>
