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
pthread_getconcurrency(3T)												pthread_getconcurrency(3T)

NAME
pthread_getconcurrency(), pthread_setconcurrency() - get or set the concurrency level of unbound threads SYNOPSIS
PARAMETERS
new_level New concurrency level for the unbound threads in the calling process. DESCRIPTION
The unbound threads in a process may or may not be required to be simultaneously active. By default, the threads implementation ensures that a sufficient number of threads are active so that the process can continue to make progress. While this conserves system resources, it may not produce the most effective level of concurrency. The function allows an application to inform the threads implementation of its desired concurrency level, new_level. The actual level of concurrency provided by the system as a result of this function call is unspeci- fied. If new_level is zero, it will cause the implementation to maintain the concurrency level at its discretion as if were never called. The function returns the value set by a previous call to If the function was not previously called, this function returns zero to indicate that the system is maintaining the concurrency level. Note: When an application calls it is informing the implementation of its desired concurrency level. The implementation will use this as a hint, not a requirement. A call to immediately after a call to may return a different concurrency level specified in If the system does not support the multiplexing of user threads on top of several kernel-scheduled entities, the functions and functions will be provided for source code compatibility, but they shall have no effect when called. To maintain the function semantics, the new_level parameter will be saved when is called so that a subsequent call to will return the same value. RETURN VALUE
If successful, returns zero. Otherwise, an error number is returned to indicate the error (the variable is not set). The function always returns the concurrency level set by a previous call to If the function has never been called, shall return zero. ERRORS
If any of the following occur, the function shall return the corresponding error number. [EINVAL] The value specified by new_level is invalid. [EAGAIN] The value specified by new_level would cause a system resource to be exceeded. APPLICATION USAGE
Use of these functions changes the state of the underlying concurrency level upon which the application depends. Library developers are advised to not use the and functions as their use may conflict with an applications use of these functions. AUTHOR
and were developed by X/Open. SEE ALSO
pthread_num_processors_np(3T), pthread_processor_bind_np(3T), pthread_processor_id_np(3T). STANDARDS CONFORMANCE
Pthread Library pthread_getconcurrency(3T)
All times are GMT -4. The time now is 05:44 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy