ahlight
개발 저장소
ahlight
전체 방문자
오늘
어제
  • 분류 전체보기 (197)
    • Java (7)
    • Spring (5)
    • JPA (2)
    • JavaScript (0)
    • Computer Science (12)
      • 디자인패턴, 프로그래밍 패러다임 (1)
      • 네트워크 (4)
      • 운영체제 (4)
      • 데이터베이스 (3)
      • 자료구조 (0)
    • 알고리즘 (1)
    • 프로그래머스 (13)
    • 백준 (94)
    • 서평 (3)
    • 회고 (1)
    • TIL (58)
    • 기타 (1)

블로그 메뉴

  • 홈

공지사항

인기 글

태그

  • Java
  • TDD
  • 라즈베리파이4 #홈서버 #포트포워딩 #dhcp
  • 클린코드
  • 넥스트스텝

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
ahlight

개발 저장소

TIL - 0307
TIL

TIL - 0307

2023. 3. 7. 23:58

1. 알고리즘

  • 소프티어 정기역량 진단
  • 첫번째 문제는 그래프  관련 문제다. 다만 간선이 양방향인 곳과 단방향인 곳이 존재하고 시간초과를 조심해야했다.
  • 결국 맞추지는 못했다. 평소에 한번이라도 풀어봤던 유형이라면 기억이 날텐데 전혀 안난게 아무래도 관련 유형을 풀어 본적이 없던 것 같은 느낌.. 또 평소에 잘 안다고 생각했던 부분들도 인터넷 검색, 외부 IDE가 제한되니 어느 부분이 약한지 확실하게 알게 됐다.(배열의 복사 뿐아니라 List류의 얕은,깊은 복사, stream으로 배열 구현 등)
  • 두번째 문제는 15분정도만에 해결한듯하다. 접근 방식도 금방 캐치하고 구현 자체도 어렵지 않아 쉽게 풀었다.
  • 그간 비주류 분야의 알고리즘 문제들을 많이 풀다보니 정작 자주 출제되는 그래프, DP등의 문제 풀이에 소홀 했던 것 같다. 조급해 하지말고 천천히 나아가보자.

2. 운영체제(공룡책)

*챕터1

1.2 컴퓨터 시스템의 구성(Computer-System Organization)

현대 컴퓨터의 구성 : CPU(1개 이상) + 공유 메모리 + 여러 장치 컨트롤러 + 각 요소들의 엑세스를 제공하는 공통버스

- 운영체제엔 각 장치 컨트롤러마다 장치 드라이버가 존재

- CPU와 장치 컨트롤러는 병렬로 실행되어 메모리를 놓고 경쟁 -> 동시에 메모리를 사용할 수 없음

 

1.2.1 인터럽트(Interrupts)

장치 컨트롤러는 작업 완료 사실을 인터럽트를 통해 장치 드라이버에게 전달

하드웨어 -----------> CPU (시스템 버스를 통해 신호를 보내 인터럽트를 발생 시킬 수 있음)

- 시스템 버스 : 주요 구성요소 사이의 주요 통신 경로이다.

1. 장치 컨트롤러가 인터럽트 요청라인(CPU하드웨어에 있는 선)에 신호를 보냄

2. 이를 감지한 CPU는 인터럽트 번호를 읽고 이 번호를 인터럽트 벡터의 인덱스로 사용

3. 인터럽트 핸들러 루틴(인터럽트 서비스 루틴)으로 점프

4. 인터럽트 처리기는 작업 완료 후 CPU를 인터럽트 전 상태로 복구

 

- 아래의 기능들은 CPU 및 인터럽트 컨트롤러 하드웨어에 의해 제공됨

1. 중요한 처리 중엔 인터럽트 처리를 연기 할 수 있어야 함

2. 장치의 적절한 인터럽트 핸들러로 효율적으로 디스패치 할 방법이 필요(여기서 디스패치는 프로세스 실행할 때의 그 디스패치) - 즉 인터럽트 처리 후 복구를 효율적으로 해야한다.

3. 인터럽트 우선순위를 분류

 

CPU의 2개의 인터럽트 요청라인

1. 마스크 불가능 인터럽트(Nonmaskable interrupt) - 복구 할 수 없는 메모리 오류와 같은 이벤트를 위해 예약된 라인

2. 마스킹 가능 인터럽트(maskable interrupt) - 장치 컨트롤러가 서비스를 요청하기 위해 사용되는 라인

 

인터럽트는 최신 운영체제에서 비동기 이벤트를 처리하기 위해 사용된다.

 

1.2.2 저장장치 구조(Storage Structure)

적재 명령 : 메인 메모리로부터 CPU내부의 레지스터로 1바이트 또는 1워드를 옮기는것

저장 명령 : 레지스터의 내용을 메인 메모리로 옮기는 것

https://dkswnkk.tistory.com/385

1차 저장장치 : 레지스터, 캐시, 메인 메모리(휘발성의 속도가 빠른 저장장치)

2차 저장장치 : 비휘발성 메모리(NVM), HDD

3차 저장장치 : 다른 장치에 저장된 데이터의 사본을 저장하기 위해 특수 목적으로만 사용되는 굉장히 느리지만 대용량의 저장장치들

 

NVS의 두 가지 유형

1. 기계적 - HDD, 광디스크, 홀로그램 저장장치 및 자기 테이프

2. 전기적 - 플래시 메모리, FRAM, NRAM, SSD

- 기계적 > 전기적(용량크고 비용저렴)

3. 후니의 쉽게 쓴 시스코 네트워킹

* Part2 

Section 4

UTP 케이블 - Unshielded Twisted-Pair <--> STP케이블

 

Section 5

베이스 밴드 : 디지털 방식

브로드 밴드 : 아날로그 방식

10 Base T -> 10Mbps속도, 베이스 밴드 방식, T -> UTP케이블

10 Base 5 -> 10Mbps속도, 베이스 밴드 방식, 500m까지 전송 가능

 

Section 6

MAC Address(Media Access Control) : 네트워크 장비의 물리적 주소

ARP(Address Resolution Protocol) : IP주소를 MAC주소로 바꾸는 작업

 

PC(A)에서 PC(B)로 통신을 하려면 ARP Request를 통해 PC(B)의 MAC주소를 알아야 통신 가능

라우터가 있는 경우 라우터를 통해 전달

MAC주소는 48bit -> 16진수로 12자리

ex) 00:60:97:8F:4F:86

앞쪽 6자리 - 회사

뒤쪽 6자리 - 장비 시리얼 넘버

 

'TIL' 카테고리의 다른 글

TIL - 0309  (0) 2023.03.10
TIL - 0308  (0) 2023.03.08
TIL - 0306  (1) 2023.03.06
TIL - 0304  (0) 2023.03.04
TIL - 0303  (0) 2023.03.03
    'TIL' 카테고리의 다른 글
    • TIL - 0309
    • TIL - 0308
    • TIL - 0306
    • TIL - 0304
    ahlight
    ahlight

    티스토리툴바