javascript ,java 언어들이 어떻게 컴퓨터에서 동작하는거죠?

글쓴이2019.03.26 19:54조회 수 364추천 수 4댓글 19

    • 글자 크기

 

javascript ,java 언어들이 어떻게 컴퓨터에서 동작하는거죠?

 

인터넷이나 책보고 프로그램 다운받고 코드입력하고 컴파일?빌드? 뭐여튼 하면

프로그램?이 실행되는데

 

이게 어떤 과정을 거처 실행되는지 알고싶어요

(뜬구름잡는 소리말고 좀 정확히)

 

메모리를 어떻게 사용하는지 운영체제는 어떻게 프로그램을 실행하는지...

 

이런 것들을 알려면 어떻게 공부해야 하죠?

    • 글자 크기

댓글 달기

  • 쉽게 생각하면 그런거임
  • c, c++, python 같은 언어들은 고급어라고 하구여. 컴파일러(gcc)를 통해 어셈블리어, 기계어로 해석되나갑니다. java 같은 경우에는 성격이 약간 달라서 인터프리터를 통해 바로 메모리에 올라갑니더. 유저는 소프트웨어를 짜고 그 명령어는 OS 를 통해 하드웨어(CPU, 레지스터 메모리 등) 작동을 시킵니더. 하드웨어와 소프트웨어 사이의 관계는 ISA 혹은 아키텍처 라는 놈에 정의되어잇습니더.
    메모리, CPU 등이 OS를 통해 어떻게 사용되는지 알고 싶으시면 컴퓨터공학과 3학년 과목인 운영체제와 컴퓨터구조 수강하세요. 깊이 안 들어가시고 싶으시면 컴공과 2학년 과목 시스템소프트웨어 들으십셔. 담학기에 열립니다.
    고급어가 해석되서 기계제어에 어떻게 쓰이는 지 보고 싶으시면 마이크로프로세서 실습들으십셔. 아트멜스투디오로 빌드 돌려보면 어셈블리어나 기계어 파일도 같이 나옵니더. 전자공학과나 항공우주공학과에 마이크로프로세서 관련 실습수업 있습니다. 컴공과는 제작년에 누가 라인트레이서 들고 다니는거 보기는 했는데 아직 수업이 있는지는 몰겠슴더. 이만 총총
  • @세련된 머위
    여기중에서 gcc만 컴파일러고 Visual Studio, Codeblock, devC++ Eclipse는 IDE입니다 IDE에서 사용할 컴파일러를 지정해 줄 수 있습니다
  • @조용한 왕솔나무
    추천!!!
  • 해당 언어의 지시에 대응되게끔 컴퓨터에 동작을 지시하는 프로그램이 따로 있다고 생각하면 될 것 같습니다. 인간은 인간이 이해하는 프로그래밍 언어로만 프로그램을 작성하면 그 프로그램이 알아서 이를 기계에 대한 명령으로 변환하는 거죠
  • 컴파일 과정에 대해서 말씀드리자면, 간략하게 알고싶으면 일단 이 동영상을 보면 됩니다
    https://www.youtube.com/watch?v=QXjU9qTsYCc
  • 그리고 저 동영상을 보고 나서 생긴 약간의 감과 함께 인터넷에서 컴퓨터공학에서 말하는 추상화(abstraction)가 무엇인지 찾아봅니다. 그걸 계속 명심하면서 공부합니다.
  • 위의 간략한 동영상을 보고 나서도 대략적으로 코드가 바뀌는 부분만 신기하다고 여겨지고, 감이 안 잡히실텐데, 컴파일러가 코드를 컴파일 하는 부분에 대해서 더 자세하게 알고싶다면 이 링크를 lecture 파일들을 참조하세요

    https://web.stanford.edu/class/archive/cs/cs143/cs143.1128/

    아마 이게 전세계에서 가장 컴파일러에 대해 시각적으로 자세하게 설명해놓은 슬라이드일겁니다. 이거보다 더 최신 문서는 생략이 많아졌더라고요.

    유튜브에 풀려있는 컴파일러 동영상들은 입문자들을 위한 강의가 잘 없는편입니다.
  • 이 컴파일 하는 과정 자체는 사람이 음식물을 씹어서 잘게 쪼개는 과정에 비유될 수 있습니다. 하지만 그 잘게 쪼개진 가루만 놓고 보면 별다른 의미가 없고, 그것이 머신 상에서 어떻게 쓰이는가에 따라 의미가 생깁니다. 씹어서 잘게 쪼개진 가루들이 인체의 어딘가에 쓰이듯, 컴파일 된 코드는 컴퓨터 상에서 특정 일을 처리하기 위해 쓰일 수 있습니다. 그 쓰이는 원리를 공부하는 분야가 운영체제와 컴퓨터 구조입니다
  • 만약에 수업을 직접 듣는 것이 부담스럽다면, 유튜브를 활용하는 것도 감을 잡아가는 좋은 밥법입니다. 컴파일러와 달리, 운영체제와 시스템 구조는 외국에서 공짜로 풀어놓은 좋은 강좌들이 많이 있습니다
  • 운영체제, 컴퓨터 구조를 공부할 때는 처음에는 조금씩 뜬구름을 잡으면서 공부해야 합니다. 그 추상화된 계층과 각각의 큰 노드들을 이해하지 않고 세부사항을 딥하게 모두 이해하는건 불가능합니다. 진짜 똑바로 공부하고싶으시면 csapp pdf 구글에 쳐서 나오는 책 있는데 거기나오는 목차 하나하나 구글링하면서 연결구조를 잡으세요

    너비우선으로 공부하셔야지 깊이우선으로 공부하시면 길을 잃을 위험성이 큽니다. 사실 과 학생들 보면 그렇게 대부분 길을 잃곤하더군요
  • 컴퓨터 공학을 프로그램을 개발하려고 가는 곳이라고 아는 경우가 많은데, 그렇게 알고 컴퓨터 공학에 왔다가 적응을 잘 못하는 사람들을 많이 봐왔습니다. 학문적으로 사실상 컴퓨터 공학은 이산수학, 선형대수학을 써서 최적화된 해를 구하는 부분과, 박스와 동그라미를 그리며 계속해서 화살표와 계층피라미드를 만드는 두 분야로 나뉘어집니다. 운영체제, 컴퓨터구조, 네트워크가 바로 그 후자인 부분입니다
  • 그리고 자바와 자바스크립트는 사실 컴퓨터 시스템을 이해하기에 적합한 언어는 아닙니다. 정말 제대로 공부할려면 C언어에 대한 기반 지식은 어느정도 갖추고 있어야 합니다. 자바스크립트는 사실상 웹브라우저에서 동작하기 때문에 웹브라우저 내부 스트럭쳐까지 이해를 해야 운영체제하고 연결이됩니다(사실 웹개발하는 사람들 가운데 이정도 기반지식을 가지고 있는 경우는 드뭅니다)

  • @조용한 왕솔나무
    글쓴이글쓴이
    2019.3.28 02:51
    감사합니다ㅜㅜ . 질문이 정말 별로였는데도 친절히 답변해주셔서 감사해요!!
  • 만약 평소에 무슨 공부를 하시는지 가르쳐 주시면 그에 알맞은 로드맵으로 설명가능합니다
  • 아니면 여기서 더 궁금하신 부분을 쪼개서 물어보신다면 시간나는대로 답변해드리겠습니다
  • @조용한 왕솔나무
    글쓴이글쓴이
    2019.3.28 03:14
    결론은 정보보안 관련 활동 이력을 만들어서 그걸 이용해서 취업을 한 뒤 더 공부하겠다는 것 입니다. .
    하지만 구체적으로 공부를 해보니 아무것도 쌓이지 않고. 이제는 무엇을 해야할지 모른체.
    [칼리 리눅스 입문자를 위한 메타스플로잇 중심의 모의 침투] , [시스템 해킹과 보안] 이라는 책을 장바구니에 담고있습니다. / 저에게도 로드맵이 있을지 궁금합니다. ㅜ / 다른 방향으로의 조언도 좋습니다. /
  • 예전부터 궁금했던게
    010101010
    이런 이진수를 최초에 기계어로 뭐로 인식되게 만들었을꺼 아니예요?

    그런 이진수가 그렇게 인식되게 만든건 어떻게 한거예요?
    이게 원론적인 질문인거같은뎅
  • 댓글들 넘 좋네요
번호 제목 글쓴이 날짜
공지 욕설/반말시 글쓰기 권한 영구 정지10 저렴한 개불알꽃 2019.01.26
공지 식물원 이용규칙 (2018/09/30 최종 업데이트) - 학생회 관련 게시글, 댓글 가능17 흔한 달뿌리풀 2013.03.04
18696 [레알피누] .7 건방진 엉겅퀴 2015.07.27
18695 [레알피누] .1 친근한 삼지구엽초 2016.08.09
18694 [레알피누] .13 친근한 비비추 2017.07.19
18693 [레알피누] .20 냉정한 나도바람꽃 2017.06.28
18692 [레알피누] .1 느린 일월비비추 2018.11.22
18691 [레알피누] .4 털많은 두메부추 2015.01.30
18690 [레알피누] .6 보통의 꿩의바람꽃 2017.11.19
18689 [레알피누] .3 까다로운 세열단풍 2018.02.03
18688 [레알피누] .5 괴로운 금낭화 2015.11.13
18687 [레알피누] .4 훈훈한 고삼 2016.12.21
18686 [레알피누] .5 창백한 반송 2018.04.09
18685 [레알피누] .29 바쁜 바위떡풀 2015.03.14
18684 [레알피누] .6 억울한 매화노루발 2015.02.16
18683 [레알피누] .3 화난 좀깨잎나무 2018.06.26
18682 [레알피누] .12 귀여운 대추나무 2018.01.16
18681 [레알피누] .13 털많은 흰꿀풀 2019.09.18
18680 [레알피누] .3 처참한 맑은대쑥 2019.05.14
18679 [레알피누] .1 사랑스러운 풍란 2015.08.25
18678 [레알피누] .15 화려한 새박 2019.10.30
18677 [레알피누] .10 부자 국수나무 2018.12.18
첨부 (0)