해보자고~!

고정 헤더 영역

글 제목

메뉴 레이어

해보자고~!

메뉴 리스트

  • 홈
  • 태그
  • 방명록
  • 분류 전체보기 (52)
    • 한화시스템 BEYOND SW 캠프 2기 (41)
    • 자료구조 (1)
    • 알고리즘 (1)
    • CS (9)

검색 레이어

해보자고~!

검색 영역

컨텐츠 검색

전체 글

  • [Java] Java 컴파일 과정

    2024.09.01 by heueun

  • [DB] 트랜잭션(transaction)과 ACID

    2024.08.06 by heueun

  • [네트워크] Proxy Server

    2024.07.23 by heueun

  • [네트워크] RESTful API

    2024.07.19 by heueun

  • [네트워크] 로드밸런싱(Load Balancing)

    2024.07.16 by heueun

  • [네트워크] 대역폭(Bandwidth)

    2024.07.12 by heueun

  • [운영체제] 멀티 프로세스(Multi process)와 멀티 스레드(Multi Thread)

    2024.07.09 by heueun

  • [운영체제] Translation Lookaside Buffers (TLB)

    2024.07.05 by heueun

[Java] Java 컴파일 과정

자바는 JVM(Java Virtual Machine) 덕분에 OS에 독립적인 특성을 가지고 있다.JVM은 OS와 프로그램 사이에서 기계어로 해석해주는 역할을 한다.어떠한 OS든 자바가 설치 되어 있다면 JVM에 의해서 자바소스코드(.java)가 기계어로 해석될 수 있다.  자바 컴파일 순서 1. 개발자가 자바 소스코드(.java)를 작성 2. 자바 컴파일러가 자바 소스코드(.java)파일을 읽어 바이트코드(.class)코드로 컴파일 한다.바이트코드(.class)파일은 아직 컴퓨터가 읽을 수 없는 JVM(자바 가상 머신)이 읽을 수 있는 코드이다. (java - > class) 3. 컴파일된 바이트코드(.class)를 JVM의 클래스로더(Class Loader)에게 전달 4. 클래스 로더는 *동적 로딩(D..

CS 2024. 9. 1. 17:38

[DB] 트랜잭션(transaction)과 ACID

트랜잭션이란?단일한 논리적인 작업단위이다.논리적인 이유로 여러 SQL문들을 단일 작업으로 묶어서 나눠질 수 없게 만든 것.트랜잭션의 SQL문들 중에 일부만 성공해서 DB에 반영되는 일은 일어나지 않는다.A가 B에게 50만 원을 이체하는 상황을 SQL문으로 보면 1. A의 계좌에서 - 50만 원UPDATE 계좌 SET 잔액 = 잔액 - 500000 WHERE id = "A"; 2. B의 계좌에  + 50만 원UPDATE 계좌 SET 잔액 = 잔액 + 500000 WHERE id = "B"; 간단히 위의 두 문장으로 나타낼 수 있는데, 이체라는 작업이 성공하려면 이 두 개의 SQL문이 모두 성공해야 한다. 만약 1번 문장은 실패했는데 2번 문장만 성공한다면 갑자기 돈이 그냥 생기는, 좋지만 말도 안 되는 상..

CS 2024. 8. 6. 05:05

[네트워크] Proxy Server

Proxy Server란?Proxy는 '대리'라는 의미이며, Proxy Server는 클라이언트와 서버 사이에서 대리로 통신을 수행하는 주체를 의미한다. 프록시 서버를 사용하는 이유1. 익명성프록시 서버를 사용하면 서버측에서 클라이언트의 IP가 아닌 프록시 서버의 IP를 보게 된다. 즉, 프록시 서버를 통해 자신의 IP를 감출 수 있어 우회가 가능하다. 2. 캐시를 사용한 속도 향상프록시 서버는 웹페이지를 캐시로 저장한다. 같은 요청이 들어오면 캐시 데이터를 반환하여 빠르게 응답할 수 있다. 3. 로그 기록, 관리프록시 서버에는 클라이언트의 기록이 남게 된다. 이 기록들을 보면 어떤 IP에서 어떤 IP로 얼마나 접속해 있는지 확인할 수 있고, 특정 IP가 방문할 수 있는 웹사이트를 제한하는 것도 가능하다..

CS 2024. 7. 23. 04:46

[네트워크] RESTful API

REST란?'Representational State Transfer' 의 약자로, API 작동 방식에 대한 조건을 부과하는 소프트웨어 아키텍처이다.클라이언트와 서버 간의 상호작용을 규정하며, 여러 원칙과 제약 조건들을 가지고 있다.상태를 가지지 않는(Stateless) 통신과 캐시 가능한 응답 등을 지향한다. API란?' Application Programming Interface' 의 약자로, 아래 그림처럼 프로그램들이 서로 상호작용하는 것을 도와주는 매개체라고 할 수 있다.  즉 RESTful API란 REST 원칙을 잘 지키며 설계된 API이다.REST의 특징 1. Uniform Interface(일관된 인터페이스)데이터를 식별 가능하게 해야 한다. 간결하고 일관적이어야 하며, URI만 보고도 어..

CS 2024. 7. 19. 03:31

[네트워크] 로드밸런싱(Load Balancing)

로드밸런싱(Load Balancing)이란?'부하분산' 과 같은 말로, 한 서버에 트래픽이 몰리는 것을 방지하고 여러 서버에 적절하게 분산시켜주는 기술이다.웹 서버 앞단에서 트래픽을 분산시키는 로드밸런서(Load Balancer)는 장치 또는 소프트웨어가 될 수 있다.또한 로드밸런서는 웹 서버의 앞단에 위치하기 때문에 보안 역할도 수행할 수 있다. 로드밸런싱의 종류주로 L4(Layer 4)로드밸런싱과 L7(Layer 7)로드밸런싱이 많이 활용된다. L4로드밸런서 부터 포트(Port) 정보를 바탕으로 부하를 분산하는 것이 가능하기 때문이다.한 대의 서버에 각기 다른 포트 번호를 부여하여 다수의 서버를 운영하려면 최소 L4로드밸런서 이상을 사용해야만 한다. L4, L7등은 OSI 7계층에서의 계층을 나타낸다..

CS 2024. 7. 16. 05:11

[네트워크] 대역폭(Bandwidth)

대역폭이란?대역폭은 네트워크 연결의 '폭'을 의미한다. 특정 시간동안 네트워크를 통해 전송할 수 있는 데이터의 최대 용량을 나타낸다. 따라서, 대역폭이 높을 수록 한 번에 많은 양의 데이터 전송이 가능하다.대역폭이 네트워크 성능에 영향을 줄 수는 있지만(속도, 트래픽 병목현상 등) 대역폭이 곧 네트워크 성능은 아니다.   대역폭의 단위대역폭은 bps(bits per second) 로 표현된다. 초 당 전송할 수 있는 비트 수를 의미한다.bps ( Bits per Sec)Kbps ( Kilos per Sec)Mbps ( Megabits per Sec )Gbps ( Gigabits per Sec ) 처리량(Throughput)처리량은 단위 시간 동안 네트워크를 통해서 전송되는 데이터의 양을 말한다. 즉, 성..

CS 2024. 7. 12. 05:25

[운영체제] 멀티 프로세스(Multi process)와 멀티 스레드(Multi Thread)

프로세스(process)란?프로그램이 컴퓨터가 실행할 수 있는 명령어들의 집합이라면 프로세스는 실행파일로 존재하던 프로그램이 메모리에 적재되어 CPU에 의해 실행(연산)되는 것이다.  각각의 프로세스는 위 그림처럼 독립된 메모리 공간을 할당 받고 그 메모리 공간에 명령어들과 데이터를 가진다.멀티 프로세스란?하나의 프로그램을 여러개의 프로세스로 구성하여 각 프로세스가 병렬적으로 작업을 수행하는 것이다. 장점- 여러 프로세스 중 하나에 문제가 발생하여도 다른 프로세스로 문제가 확산되지 않는다.- 서로 다른 프로세스 영역을 침범하지 않도록 운영체제가 관리해준다. 단점- 멀티 스레드보다 많은 메모리 공간과 CPU 시간을 차지한다.- 프로세스 간의 복잡한 통신 (IPC) 가 필요하다.- 독립된 메모리 영역이기 때..

CS 2024. 7. 9. 06:00

[운영체제] Translation Lookaside Buffers (TLB)

TLB란?MMU 내부에 존재하는 작고 빠른 하드웨어 캐시(주소 변환 캐시) TLB를 쓰는 이유page table 은 메인 메모리에 존재한다. 그렇기 때문에 원하는 데이터를 얻기 위해서는 CPU 가 메인 메모리에 최소 2번은 접근해야 한다.1. page table 에 한 번 접근2. page table을 기반으로 실제 메모리에 접근 이런 메모리의 접근을 줄이기 위해 사용하는 것이 TLB 이다. TLB의 구조TLB는 여러 개의 엔트리로 구성되어 있으며, 각 엔트리는 다음과 같은 정보를 포함한다.가상 페이지 번호(VPN): 가상 주소에서 추출된 페이지 번호물리 페이지 프레임 번호(PPFN): 물리 메모리에서 해당 페이지를 저장하는 프레임 번호상태 비트(Status Bits): 유효성 비트(Valid Bit),..

CS 2024. 7. 5. 05:46

추가 정보

인기글

최신글

페이징

이전
1 2 3 4 ··· 7
다음
TISTORY
해보자고~! © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바