Sashok дай совет. Я основы языка знаю.
Что учить дальше? Писать я хочу под Linux,
и хочу писать программы работающие с сетью!
Также хочу использовать визуальный
интерфейс (gtk если не ошибся).
Ты сказал "разобраться с процессами,
коммуникацией между процессами и т.д."
Это что, я не понял, объясни пожалуйста.
Я хочу на днях книгу купить, вот думаю какую
Russian, сразу хочу сказать, что с графикой мне дела иметь не приходилось, но здесь наверняка есть люди, которые тебе подскажут и по поводу графики.
По твоим вопросам:
Как я понял, язык ты знаешь, а значит, тебе надо изучать работу системы и пробовать системные вызовы.
Linux, как и любой Unix, поддерживает многопроцессную работу (как на уровне process, так и на уровне thread), и, практически, в любой серьезной системе тебе эти возможности понадобятся. Соответственно, тебе надо изучить, как их запускать, синхронизировать, обмениваться между ними информацией. А заодно, если ты никогда не имел дела с такими средами, как писать программу "безопасно" с точки зрения многопроцессной работы.
Кроме того, в системе есть такая штука, как прерывания (в Юниксе они называются сигналами (signals) ), и без них ты тоже не обойдешься.
Что же касается собственно обмена по сети, то смотри сокеты (socket).
Я все вышеперечисленное изучал по разным книгам, причем, в основном, англоязычным. Наверняка, какие-то из них переведены на русский, а кроме того должны быть и книги русских авторов.
В общем, моя рекомендация такая: сделай поиск по ключевым словам process, fork, exec, wait, pthread, fifo, msgget, shmget, semget, signal, socket. В нужной тебе книге они должны присутствовать все или почти все. Дальше смотри, понятен тебе уровень объяснений, или нет.
Если нужно, могу прислать список конкретных книг, имеющихся у меня (что вовсе не означает, что они лучшие
).
Если возникнут конкретные вопросы - не стесняйся задавать, этот форум как раз для них и предназначен.
Успехов!