life is egg

22.12.02 [JAVA심화3 +CS] 본문

TIL

22.12.02 [JAVA심화3 +CS]

삶은계란진재혁 2022. 12. 4. 14:08

예습영상 3개 보기 

더보기

1.프로세스 뭐고 스레드는 뭔가요?   

 

 !!  프로세서와 프로세스 구분 !!(https://blogger.pe.kr/422)

 

프로세서

>하드웨어적측면에서는 CPU를 가지고 있는것 ...!(하나이상의 ALU와 처리 레지스터를 가지고 있어야함)

>소프트웨어적 측면에서는 워드프로세서나 컴파일러  어셈블러 처럼 작업을 수행하는 주체..?

>보통 하드웨어적 측면으로 범위가 좁혀지는 중이다 ..!

 

프로세스

프로그램이 돌아가고있는 상태 프로세스!

작업의 과정이 파일로 저장되어 있으면 그것을 "프로그램"이라고 부르고 메모리에 적재되어 실행 중 이거나 실행 대기 중일 땐 "프로세스"라고 구별하여 부를 뿐입니다.

즉 프로세스는 "메모리에 적재되어 프로세서에 의해 실행중인 프로그램" 이라고정의하는 것이 정확할 것입니다.

 

여러개를 돌린다.. 동시성..병렬성

동시성은 프로세서!하나가 이거조금 저거조금을 엄청 빨리하는것..! Concurrency

  >> 작업을 바꾸는것을 Context Switching !

병렬성은 프로세서하나에 여러개 코어가 달라붙어서 각각 동시에 작업을 수행하는것..

 

근데 한 프로세스! 안에도 ... 여러작업들이 동시에 진행될 필요가 있다.. 이말임..

 

2 코다의 Process vs Thread

용어주의하기..! 혼동금지...

프로그램과 프로세스 그치 프로세스는 프로그램이 하디드스크에서  메모리에 올라간 상태

1cpu 1프로세스 이건 대원칙인가보다

그러면 여러개의 프로세스를 돌릴라면~ (유튜브로 음악도 듣고 인텔리제이로 코딩도하고 슬랙도 켜놓고 등등)

시분할로 짧은텀으로 이것 저것 동시에 진행되는 것처럼 짧은텀을 반복하면서 전환하면서 실행

? 컨테스트 스위칭

 

이걸 좀더 쉽게 하기위해 스레드의 등장 ..!

프로세스의 자원을 공유

>Code , Data, Heap 영역을 공유하고 .. Stack영역은 공유 안함 

 

멀티프로세스 vs 멀티스레드  두 개념 모두 처리방식의 일종 ..!

 

알아야할 개념 실행단위..

[한개의 쓰레드냐 = 프로세스가 실행단위  여러개의 쓰래드를 쓰냐 쓰래드가 실행단위=멀티쓰레드]

 

멀티 프로세스의 장점...

멀티쓰레드의 문제점을 생각하면된다 서로 자원을 공유한다는 뜻은 사고확대의 위험이 크다는 소리

 

멀티쓰레드...메모리를 적게차지하고 컨테스트? 스위칭 비용이 덜든다..

 

멀티코어는 먼데?

관점을 달리하자... 하드웨어적 측면으로 바라보셈...

동시성(동시에 일어나는 것처럼 빠른 스위칭하는것)VS 병렬처리 is 진짜 동시에함

병렬처리는 둘이상의 코어 에서 동시에 하나 이상의 프로세스가 한꺼번에 진행되는것왜 ? 여러개의 프로세서가있음

그럼 프로세서=코어?

 

3.외국인 John의 멀티쓰레딩 코딩 

 

 

 

 


 

 

테스트코드!

Generate-> Test

        bulid.gradle ~  junit친구가 탑재되어있네 ~ 이게 테스트 툴인가봐 ~

 

테스트클래스는 생성되는 패키지가 다르넹~ 

 

 

cicd? 파이프라인? ? 아 그런게 있었구나 ... 안정적인 프로그램 배포

 

TDD - BDD    기능단위 테스트 .

TDD는 점프 투 자바에 나온 예제 풀어볼 같이 해볼 예정 ~ 

 

 

 

백엔드... 테스트코드 작성 연습 중요해 ~ 면접때 잘물어 본데

 

 

쓰레드를 공부해야하는이유는 동시성제어..? 동시성..!

 

 


CS특강 osi7계층

더보기

목표 할 수 있어야해!

  •  LAN과 WAN의 차이점에 대해서 설명할 수 있는가?
  • 클라이언트와 서버의 차이점에 대해서 설명할 수 있는가?
  •  네트워크 장비와 네트워크 서비스에 대해서 설명할 수 있는가?
  •  OSI 7계층의 계층별 역할을 설명할 수 있는가?
  •  OSI 7계층의 계층별 프로토콜 및 단위를 설명할 수 있는가?
  •  TCP/IP 프로토콜은 데이터 통신의 신뢰성을 가질 수 있도록 어떤 방법을 이용하는지 설명할 수 있는가?
  •  패킷의 용도와 구성에 대해서 설명할 수 있는가?

글로벌네트워크 (통신장비+통신역할+통신규칙)

 

WAN은 누가 관리하냐 통신사!

 

OSI7계층

>각 규칙에 맞게 데이터를 전달할수 있게 하기 위해 ... 표준화를 통해 ..!

근데 ..TCP/IP ,,,프로토콜이 이미 먼저 완성되버림...

이걸 더 세분화 한게 OSI7계층..

!!중요 시각적 표현이 가능해짐..!

7계층 뭐냐고 ( P D N T S P A)

  • PDN > 네트워크 지원계층
  • T>전송
  • SPA>사용자지원계층 소프트웨어..9

 

장비 분류의 기준이됨

L1

L2

L3

L4

L7

!!

 


P  >  ~ 전기신호 <~>디지털신호

D >Len?카드 기준   MAC주소(주민등록번호같은거) 기준 내 신호인가 아닌가 판단

   > IP주소 기준으로 찾아가서 MAC주소가 맞나 확인해해

   >움직이면서 [출발맥주소 ->도착맥주소=출발맥주소>도착맥주소.....반복~

   >프레임기반으로 쪼개서... 순서맞추기+데이터복구..

    > 생물때 배운 RNA랑 비슷하네 앞 뒤는 단순 구분정보

 

N >IP주소 부여하는 역할?

   >라우터 ... 최적의경로를 찾아주는 역할... 경로선택 라우팅

   >IP가 도착지 주소가 맞으면 전송계층으로 올려줌

    > ARP ? 는 머지 뭔 주소를 바꿔즈는 거같은데 .. RARP도있다 이건 역방향같음


T> 오류복구와 흐름제어 담당

   >두 시스템간 신뢰성잇는 데이터..

   >port단위.. 송수신?

   > TCP  :  오류방지.. 신뢰도 높아 

   >UDP   : 데이터 손실이라도 지속적 전송이 중요

 


S>세션관리 동기화 신호 주고받음(체크포인트)

P>인코딩 ,디코딩.... 실제 디스크에 저장되는 ..?

   >데이터 변환 압축 암호화...

A >브라우저..메일시스템.. HTTP...


송신 캡슐화  7~>1계층

 

수신 디캡슐화 1~>7 계층

 

 

 

무튼 현재 사용하는건 

TCP/IP Updated 버전

 

면접에서 알아야할것.  

OSI 7 계층

TCP/IP 와 차이...

 

 


===============================윗내용은 .. 차차 정리할 내용들 =================================

2022.12.04 - [BOOK] - 점프 투 자바

 

점프 투 자바

https://wikidocs.net/191 00장 들어가기 전에 점프 투 자바가 세상에 나온지 벌써 10년이 다 되어 간다. 책을 처음 집필하던 시절의 마음과 지나온 프로그래밍 경험을 잘 조합하면 더 좋은 책을 만들 수

wh-dev.tistory.com

읽으면서 메모한게 대략적으로 끝났다..!

 

이제..곧 스프링 배우는데... 아직 자바에 대해 깊숙하게 잘 모르기 때문에 .. 밀리고 밀린 열혈자바를 추가로 할 예정...

 

 

파이썬의 편함에 취해 자바의 불편함을 잊고 살고 있었다...

 

 

 

친구가 알려 줌 !

 

배열을 출력하라면 그냥 배열 변수명만 입력해서는 출력이 안된다..

 

그러면 객채@해쉬? 값을 출력해버린다

 

배열을  sout를 통해 보고싶다면 ... Arrays.toString(배열변수명) 이렇게 해야한다 !

 

Ide 사용법도 알려줬다

 

iter ~ for-each문 자동 으로 만들어준다 ! 

'TIL' 카테고리의 다른 글

22.12.06 [MVC]  (0) 2022.12.06
22.12.05 [Spring 입문-SQL]  (2) 2022.12.06
22.12.01 [JAVA 심화 2]  (2) 2022.12.01
22.11.30 [자바심화 1일차 & 미니프로젝트피드백]  (0) 2022.11.30
22.11.29 [미니_팀_프로젝트 3일차]  (2) 2022.11.29
Comments