Sponsored Content
Top Forums UNIX for Dummies Questions & Answers Open-source projects to learn concurrency-managed network programming in Unix? Post 302686981 by TheTaoOfPhil on Wednesday 15th of August 2012 07:33:07 PM
Old 08-15-2012
Open-source projects to learn concurrency-managed network programming in Unix?

Hi,

I am a mid-career programmer with extensive experience in object-oriented design and development in C, C++, and C#. I've written a number of multi-threaded server applications and background services, although my grasp of networking protocols is a bit weak: my current job drifted away from the promise of true infrastructure work and into application development. That, along with the C#/.NET technology stack, has made me a bit dull.

I am ready for a change.

I am about 1/3 the way through APUE and am hooked. Unix really appeals to me. I plan to continue on to the Steven's network programming volumes. I am of course coding up my own exercises as I go through the material.

My ideal job would be something along the lines of a recent (admittedly vague) job posting that describes woking on "a highly flexible/scalable framework to provide services to various end user applications," requiring "proficiency in building network protocol frameworks and thorough knowledge of inter-process communication, multithreading and thread synchronization."

Ideally I would find an employer who can leverage my Windows experience while also giving me exposure to this kind of work in Unix. But most employers these days don't want to have to make that kind of investment in their employees.

So I am considering finding an open source project where I could both make a contribution and acquire these skills. The ideal project would be in C or C++: several traumatic experiences with memory leaks in C# and the CLR have given me a strong yearning for reclaiming control of allocation.

There are a number of good open-source projects out there, but many of them are either done (e.g., OpenLDAP) or being done in Java (e.g., HDFS). Can anyone recommend any active open-source projects for this purpose?

Or do you have any other ideas about making this kind of career transition?

Many thanks for your help!
 

4 More Discussions You Might Find Interesting

1. Programming

Want To Learn Network Programming

I want to learn Network Programming with C,but I don't know how to start. Thank you. (2 Replies)
Discussion started by: hubin330
2 Replies

2. UNIX for Dummies Questions & Answers

How does unix system administration, unix programming, unix network programming differ?

How does unix system administration, unix programming, unix network programming differ? Please help. (0 Replies)
Discussion started by: thulasidharan2k
0 Replies

3. Shell Programming and Scripting

Best way to learn UNIX and shell Programming

Guys, What do you think is the best way to learn UNIX and shell scripting? ** I keep on searching tutorials online, where I loose most of my time :( Let me know the way you learnt the UNIX concepts, your replies might help me learn more. Thanks a ton:b: (2 Replies)
Discussion started by: dnam9917
2 Replies

4. UNIX for Beginners Questions & Answers

Wanna learn native GUI programming in UNIX - Linux ?

Hi , wanna learn native GUI programming in Unix-Linux instead of Gtk and Qt. No problem. You don't need a cross platform Gui toolkit like Gtk and Qt. And the code and syntax is also not more or less than others. Check out this code for a simple mainwindow for your application that is openend in... (0 Replies)
Discussion started by: Sennenmut
0 Replies
libmlib_mt(3LIB)														  libmlib_mt(3LIB)

NAME
libmlib_mt - multi-threaded mediaLib SYNOPSIS
cc [ flag... ] file... -lmlib_mt -lmlib [ library... ] #include <mlib.h> Interfaces in this library provide functions for multimedia processing. Multi-threaded (MT) mediaLib is a software layer developed on top of mediaLib using OpenMP. When it is used with a large data set on a multi-processor system, MT mediaLib will partition data into subsets and process the subsets in parallel, thus greatly improving performance of applications that use mediaLib. INTERFACES
The shared object libmlib_mt.so.2 provides the same public interfaces as those defined in libmlib(3lib). See intro(3) for additional infor- mation on shared object interfaces. There are two ways to use MT mediaLib. 1. Pre-load a multi-threaded mediaLib library during runtime by setting the LD_PRELOAD environment variable as follows before starting your application, in Bourne/Korn shell: LD_PRELOAD=libmlib_mt.so export LD_PRELOAD or in C shell: setenv LD_PRELOAD libmlib_mt.so In this way, you can take advantage of MT mediaLib without rebuilding your application. 2. Link your application with a multi-threaded mediaLib library directly as shown under . In this way, an MT mediaLib library is always used whenever your application is started. The parallelization of MT mediaLib is controlled, in part, by the PARALLEL environment variable. You can change its setting to adjust the degree of parallelization before starting your application, in Bourne/Korn shell: PARALLEL=n export PARALLEL or in C shell: setenv PARALLEL n where n is a positive integer for number of threads. Note that other factors also affect the degree of parallelization in MT mediaLib. /usr/lib/libmlib_mt.so.2 shared object /usr/lib/64/libmlib_mt.so.2 64-bit shared object See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Availability |SUNWmlibt | +-----------------------------+-----------------------------+ |MT-Level |MT-Safe | +-----------------------------+-----------------------------+ Intro(3), libmlib(3lib), attributes(5) 30 Sep 2005 libmlib_mt(3LIB)
All times are GMT -4. The time now is 12:22 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy