통신방식은 어떻게 되는지?
클라이언트가 접속할 때 TCP 소켓을 만들고 서버 포트로 접속합니다
클라이언트가 접속할 때마다 서버는 새 thread를 생성하여 각 명령을 독립적으로 처리합니
디바이스를 어떻게 동작시켰는지?
클라이언트에서 TCP 명령어를 송신하면 서버에서 명령어를 분석하여 적절한 디바이스가 동작할 수 있게 합니다
각 디바이스를 제어하는 기능별 소스를 작성하고 이를 공유 라이브러리 구조로 생성하여 확장 가능성을 높였습니다
thread 관리를 어떻게 하였는지?
서버는 멀티스레드 환경으로 멀티 클라이언트를 지원하는 환경으로 구성하였습니다 그렇기 때문에 GPIO를 동시에 건드리면 충돌할 위험이 있기 때문에 각 GPIO를 뮤텍스로 보호하여 오류를 방지하였습니다