SYS_OPEN (), SYS_READ () 등과 같은 프로그램이 시스템 레벨 프로그램의 예입니까?

StackOverflow https://stackoverflow.com/questions/1628540

  •  06-07-2019
  •  | 
  •  

문제

스케줄러, 스레드 라이브러리, 프로세스 관리, 메모리 관리 등에 작성된 프로그램은 시스템 프로그램이라고 불렀습니까? Open (), printf (), scanf (), read ()와 같은 함수를 구현하는 프로그램과 어떻게 다른가? 시스템 호출을 구현하는 프로그램과 해당 구현 스레드 라이브러리, 프로세스 관리, 메모리 관리 등과 같은 시스템 수준 프로그램간에 계층 구조의 차이가 있습니까?

내 QSTN을 이해 하셨기를 바랍니다

도움이 되었습니까?

해결책

Open (), printf (), scanf (), read ()와 같은 함수는 라이브러리 기능입니다. sys_* 상대방은 모든 응용 프로그램 개발에 사용될 수 있습니다. 반면에 sys_open, sys_close, sys_read 기타는 일반적으로 커널로 알려진 부수적 인 시스템으로 구현됩니다. 또한 스레드 라이브러리, 컴파일러, 링커와 같은 시스템 프로그램이 구현되어 다른 응용 프로그램 개발에 도움이됩니다. 이것이 시스템, 시스템 프로그램 및 응용 프로그램의 차이를 해결하기를 바랍니다.

다른 팁

"시스템 수준 프로그램"이라는 용어 자체는 익숙하지 않지만 "시스템 레벨 프로그래밍"과 같은 경우 "시스템"(일반적으로 구체적으로 상호 작용하는 상당히 낮은 수준의 코드를 작성하는 것과 관련이 있습니다. 하드웨어/플랫폼/아키텍처/등) 어떤 식 으로든 초록을 추상화합니다 (시스템 프로그래밍) 시스템 공유가 될 수있는 더 높은 수준의 프로그램을 작성할 수 있도록합니다.

귀하의 질문은 "시스템 프로그래밍"과 응용 프로그램 프로그래밍의 차이점과 관련된 것 같습니다. Open (), printf () 등과 같은 함수는 기본 시스템 호출이 존재한다고 가정하고, 어떤면에서는 높은 수준이라고 가정합니다. 즉, 시스템 수준과 애플리케이션 수준 프로그래밍 사이의 경계는 흐릿하며 많은 사람들의 마음에서 변화했습니다. 많은 사람들이 이제 C 또는 C ++와 같은 언어로 작성된 모든 프로그램은 15 년 전에 휴대 할 수없는 시스템 별 프로그램이라고 생각합니다.

따라서 응용 프로그램 및 시스템 수준 프로그래밍의 차이점이 무엇인지 묻는다면 많은 독서를해야합니다. 연결된 Wikipedia 기사를 살펴보십시오. 좋은 출발점을 제공해야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top