Недавно я запрограммировал клиент-серверную программу на C, где сервер работал на встроенной плате с ОС Linux, а клиент работал на машине с Linux. Все, что мне нужно было сделать, это указать IP-адрес платы клиенту, работающему на машине, чтобы установить соединение.
Но теперь я делаю то же самое, но сервер работает на встроенной плате, на которой нет ОС. Я все еще устанавливаю соединение tcp/ip между сервером и клиентом, но использую стандартную библиотеку uIP (microIP).
Мне сказали, что код, который будет работать на встроенной плате (сервере), будет очень сложно написать, поскольку он должен быть специфичным для платформы, то есть мне лучше получить код, который уже предназначен для платформы. Однако мой вопрос: почему намного сложнее запрограммировать файл C на плате для установления соединения, когда на плате нет ОС, когда это было относительно «легко» сделать на плате с ОС. Все, что я сделал для последнего, это написал код на машине с Linux, затем перенес код на плату ОС с помощью scp
, скомпилировал его и выполнил. Почему нельзя сделать то же самое для платы без ОС? Я знаю, что не смогу скомпилировать на плате, но могу ли я скомпилировать сервер на машине и загрузить его на плату, не беспокоясь ни о чем другом? Почему это обстоятельство намного сложнее, чем если бы я работал с платой ОС?