IT 지식 독서요약 47,51 자바스크립트와 파이썬은 어떻게 작동할까?

2022. 6. 13. 10:51·TechKnowledge/CS관련지식

자바스크립트

  • 브라우저가 웹페이지에서 자바스크립트를 발견하면(예를 들어 , <script> 태그를 만나면) 프로그램의 텍스트를자바스크립트 컴파일러로 전달한다
  • 컴파일러는 프로그램에 에러가 있는지검사하고 , 프로그램을 모형 컴퓨터처럼 만들어 낸 컴퓨터의 어셈블리 언어 명령어로 컴파일한다 .
  • 모형 컴퓨터 같은 시뮬레이터를 실행하여 자바스크립트 프로그램이 수행하기로 되어 있는 모든 기능을수행한다. 시뮬레이터와브라우저는 밀접하게 상호작용한다 .

자바스크립트는 싱글쓰레드 언어이다 호출스텍이 한개이기 때문에 1회에 1개의 작업을 처리하는 구조이다

함수는 호출스텍의 가장 윗쪽에서 먼저 처리된다

그렇기에 브라우저 이미지 작업을 자바스크립트로 진행할때 엄청긴 함수가있다면
브라우저는 작업을 처리하지못하고 대기상태가 됩니다. 이런경우 함수작업때문에 페이지를 못그리고 코드 실행이 되지않습니다. 

파이썬

  • 파이썬을 실행할 때는 프로그램의 텍스트가 파이썬 컴파일러로 전달된다.
  • 컴파일러는 프로그램에 에러가 있는지 검사하고 , 프로그램을 모형 컴퓨터처럼 만들어 낸 컴퓨터(더많은 레퍼토리를 가진 가상머신)의 어셈블리 언어 명령어로 컴파일한다 .
  • 컴파일러는파이썬 프로그램이 하기로 되어 있는 모든 동작을 수행하고자 가상 머신을 실행한다.
  • 가상 머신
    (가상 머신은 키보드나 인터넷에서 데이터를 읽거나 화면예출력을 표시하는 것 같은 작업을 하기 위함 )

파이썬 구현체는 인터프리터 안에 컴파일러를 내장하고 있습니다

CPython

  • 파이썬을 C언어로 구현한 구현체
  • 인터프리터이면서 컴파일러
  • 파이썬 코드를 컴파일해서 bytecode로 바꾸고 인터프리터가 실행
  • .py 파일을 실행하면 .pyc파일이 생성(cpython이 컴파일한 bytecode 들어있음)
  • GIL(Global interpreter lock) 사용

Jython

  • 파이썬 코드를 java bytecode로 만들어서 JVM에서 실행될 수 있도록 함
  • .py파일을 .class 파일로 컴파일

PyPy3

  • python 자체로 구현
  • JIT 컴파일(프로그램을 실행하는 시점에서 필요한 부분을 즉석으로 컴파일하는 방식) 도입해서 Cpython보다 빠름

저작자표시 (새창열림)

'TechKnowledge > CS관련지식' 카테고리의 다른 글

대규모 시스템 설계 기초 학습용 ch2  (0) 2026.04.05
IT 지식 독서 요약 72, 73 월드 와이드 웹은 무료다/ URL의 의미  (0) 2022.06.22
Web Server와 WAS의 차이  (0) 2022.06.04
IT 지식 독서요약 소프트웨어 27. 작문과 비슷한 프로그래밍  (0) 2022.06.03
It 지식 독서 요약 14-프로세서는 무조건 빠른게 좋을까?  (0) 2022.05.24
'TechKnowledge/CS관련지식' 카테고리의 다른 글
  • 대규모 시스템 설계 기초 학습용 ch2
  • IT 지식 독서 요약 72, 73 월드 와이드 웹은 무료다/ URL의 의미
  • Web Server와 WAS의 차이
  • IT 지식 독서요약 소프트웨어 27. 작문과 비슷한 프로그래밍
김코딩개발자
김코딩개발자
  • 김코딩개발자
    김코딩의 개발로그
    김코딩개발자
  • 전체
    오늘
    어제
    • 분류 전체보기 (65)
      • 개발이야기 (16)
        • 개발로그 (5)
        • 항해일지 (11)
      • Develop (0)
      • Life (0)
      • Stack (29)
        • C++ (6)
        • Ext.js (1)
        • Spring (18)
        • Java (2)
        • JavaScript (2)
      • TechTrend (0)
      • TechKnowledge (20)
        • CS관련지식 (9)
        • 알고리즘 (9)
        • 네트워크 (2)
  • 블로그 메뉴

    • 홈
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    java Stack
    지연수치표
    osi 2계층
    자바스크립트입문
    데이터 용량단위
    응답지연값
    괄호 회전하기
    서비스 경험
    개발입문
    시간복잡도
    lan 통신
    서비스경험
    DB원리
    프로그래머스 멀리뛰기
    테스트주도개발
    올바른 괄호
    프로그래머스 LV2
    직장인
    SpringBoot DB
    관점지향프로그래밍
    괄호문제
    프로그래머스
    OSI 3계층
    데이터 마이그레이션
    동적계획법
    네트워크
    ip통신
    개발일기
    대규모 트래픽
    Spring AOP
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
김코딩개발자
IT 지식 독서요약 47,51 자바스크립트와 파이썬은 어떻게 작동할까?
상단으로

티스토리툴바