2013-06-25 9 views
0

OS에서 실행되지 않는 시스템에 임베디드 C 소프트웨어를 작성하고 있습니다. netdb.h의 gethostbyname() 함수를 사용할 수 있기를 원합니다. 리눅스 OS에 포함되어있는 라이브러리가 무엇이든간에 제 생각입니다. 라이브러리를 프로젝트에 포함시킬 수 있습니까? 또는 OS에 종속적입니까?내장 소프트웨어 시스템의 netdb.h gethostbyname 기능?

내가 포함 할 수 있다면 어디에서 전체 라이브러리를 구할 수 있습니까?

+0

[출처] (https://www.kernel.org/)에서 전체 라이브러리를 얻을 수 있습니다. – brice

+1

그래서 어떤 네트워크 스택을 사용하고 있습니까? – Clifford

+0

gethostbyname()이 중요하지 않은 경우 많은 OS 대체 인프라가 필요합니다. gethostbyname()이 정말로 필요합니까? 처음에해야 할 일이 없으면 무엇을 가질지 다른 문제를 찾아 낼 수 있습니까? lwip (경량 IP)을 사용하여 사용중인 네트워크를 대체하는 데 유용 할 수있는 베어 메탈 네트워크 스택을 찾으십시오. –

답변

1

gethostbyname()은 원래 BSD 소켓의 POSIX API 함수입니다. OS가 없다면 독립 실행 형 네트워크 스택이 필요합니다. 많은 사람들이 BSD와 비슷하거나 유사한 인터페이스를 사용하여 포팅 코드를 더 간단하게 만들지 만 일부는 (특히 OS 나 RTOS가 필요없는) 일부는 매우 제한적인 시스템에서 실행되도록 설계 될 것이고 최소한의 API 일 수도 있습니다.