김데이의 개발공부

[ Weekly Paper 05 ] 프로세스와 스레드 / 프레임워크와 라이브러리 본문

코드잇 Node.js(BE) 부트 캠프/위클리 페이퍼 📃🖌️

[ Weekly Paper 05 ] 프로세스와 스레드 / 프레임워크와 라이브러리

theday365 2025. 11. 2. 22:19
반응형

 

 

위클리 페이퍼 주제 (2025.10.27 ~ 11.02)

✅ 프로세스와 스레드에 대해 설명 해 주세요

✅ 프레임워크와 라이브러리의 차이에 대해 설명 해 주세요

 


 

Q1 - Final . 프로세스와 스레드에 대해 설명 해 주세요

[네이버 사전] 각 단어의 순수 검색 결과 - 왼쪽 : 프로세스(과정, 가공하다, 처리하다) [네이버 사전] 각 단어의 순수 검색 결과 - 오른쪽 : 스레드(실, 꿰다, 요리조리 빠져나가다)
[네이버 사전] 각 단어의 순수 검색 결과 - 왼쪽 : 프로세스(과정, 가공하다, 처리하다) / 오른쪽 : 스레드(실, 꿰다, 요리조리 빠져나가다)

 

프로세스 란?

 - 영문의 사전적 정의 : 과정, 가공하다, 처리하다

 - 컴퓨터 과학에서의 정의

  • 컴퓨터에서 실행중인 프로그램을 의미
  • CPU의 기능과 운영체제의 자원 관리 기능이 발전하면서 여러 개의 프로세스를 동시에 실행하는 "멀티태스킹"이 나옴
  • 부모 - 자식 관계를 가지며, 부모 프로세스가 종료되면 자녀 프로세스까지 종료되는 연쇄적 종료가 가능

 

스레드 란?

 - 영문의 사전적 정의 : 실, 꿰다, 요리조리 빠져나가다

 - 프로그램에서의 정의

  • 프로세스 보다 작은 실행 단위
  • 프로세스 안에 여러 개의 스레드가 있을 수 있고, 서로 메모리를 공유하여 코드를 실행
  • 생성과 제거가 빠르고, 적은 메모리를 점유하며, 정보 교환이 쉬움

- 컴퓨터 과학에서의 정의 

  • 동시에 여러 작업이나 프로그램을 실행 하는 것 
  • 코드를 실행할 수 있는 각 단위를 스레드라고 함
  • 자바스크립트에서 메인 스레드는 브라우저에서 사용자 이벤트 처리 / 디스플레이 렌더링 / 웹페이지 구성 실행 
    (단일 스레드를 사용하기 때문에, 스레드에 불필요한 작업이 많으면 전체 브라우저의 속도가 저하 됨)
  • 최근 자바스크립트에서 추가 스레드를 생성하는 방법을 제공 ⇒ 서로 통신하며 독립적으로 실행

 

 

참고 문헌 

1) 프로세스

 

프로세스(컴퓨터 공학)

컴퓨터에서 실행 중인 프로그램을 의미한다. '프로그램'은 하드디스크 등의 저장공간에 저장되어 있는 코드와 리소스

namu.wiki

 

 

 

2) 스레드

 

스레드(컴퓨터 용어)

Thread | 스레드 '쓰레드'라고도 부르는 사람도 있는데 정확한 명칭은 '스레드'다. 운영체제의 실행 단위 중

namu.wiki

 

 

스레드 (Thread) - MDN Web Docs 용어 사전: 웹 용어 정의 | MDN

 

developer.mozilla.org

 

 

 


 

Q2 - 1.  프레임워크란?

  • 미리 작성된 코드 & 도구 모음 (소프트웨어 구성 요소 모음)
  • 소프트웨어 개발에서 뼈대 / 바탕 / 기본 역할이 되어 줌
  • 장점 : 개발 시간을 줄여주고, 이미 어느정도 정형화 되어 있어 좋은 품질의 소프트웨어(프로그램) 개발 가능 
  • 단점 : 언어 습득에 일정 시간을 소요해야 하며, 확장성의 한계가 올 수 있음

 

Q2 - 2. 라이브러리란?

  • 개발 작업에서 특정 기능을 하는 도구 코드
  • 단독으로 동작하지 못함
  • 장점 : 반복 동작하는 내용을 줄여서 사용 가능하고, 사용하기 간편하여 업무 효율이 높아짐
  • 단점 : 너무 많은 라이브러리를 사용하면 성능이 저하되고, 메모리 사용량이 늘어남.

 

Q2 - Final . 프레임워크와 라이브러리 비교하기

  프레임워크 라이브러리
공통점 개발자가 프로그램/애플리케이션을 개발하기 쉽게 도와주는 도구
npm 을 통해 다운로드 후 적용 가능
차이점 소프트 웨어의 뼈대 담당 
⇒ 개발에 적용되면 관련된 모든 작업/프로젝트에 사용해야 함
특정 기능에만 적용 가능, 필요할 때만 호출 가능
프로그램 / 애플리케이션 제어권이 프레임워크에 있음
(개발자가 프레임워크가 정한 틀 안에서 개발을 진행)
개발자가 주도하여 사용
(사용 방식은 정해져 있지만,
어디에 어떤 라이브러리를 사용 할지는 개발자의 선택)
프레임워크 만으로 프로그램 / 애플리케이션 개발 가능 여러 라이브러리가 모여야 하나의 프로그램 개발 가능

 

 


 

다음 주에 또 만나요 🖐️

반응형