CS20 [CS / 운영체제] 3.1 운영체제와 컴퓨터 안녕하세요! 개발감자입니다.오늘은 CS의 운영체제 중에서도 3.1 운영체제와 컴퓨터 에 대해서 정리해보았습니다. 3.1 운영체제와 컴퓨터운영체제 : 하드웨어와 소프트웨어를 관리컴퓨터 : cpu, 메모리 등으로 이루어짐 운영체제(Operating System)사용자가 컴퓨터를 쉽게 다루게 해주는 인터페이스한정된 메모리나 시스템 자원을 효율적으로 분배운영체제와 유사하지만, 소프트웨어를 추가적으로 설치할 수 없는 것 : firmware(펌웨어) 3.1.1 운영체제의 역할과 구조운영체제의 역할CPU 스케줄링과 프로세스 관리CPU 소유권을 어떤 프로세스에 할당할 것인가?프로세스의 생성, 삭제 , 자원 할당 및 반환 관리메모리 관리한정됨 메모리를 어떤 프로세스에 얼만큼 할당할 것인가?디스크 파일 관리디스크 파일을 .. 2024. 5. 21. [CS / 네트워크] 2.5 HTTP 안녕하세요! 개발감자입니다.오늘은 CS의 네트워크 중에서도 2.5 HTTP에 대해서 정리해보았습니다.2.5 HTTP애플리케이션 계층으로 웹 서비스 통신에 사용됨.HTTP/1.0부터 HTTP/3까지 발전을 해옴2.5.1 HTTP/1.0기본적으로 한 연결당 하나의 요청을 처리하도록 설계됨. → RTT 증가RTT 증가RTT : 패킷이 목적지에 도달하고 나서 다시 출발지로 돌아오기 까지 걸리는 시간, 패킷 왕복 시간서버로부터 파일을 가져올 때마다 TCP의 3-웨이 핸드셰이크를 계속 열어야 하기 때문해결 방안 : 이미지 스플리팅, 코드 압축, 이미지 Base64 인코딩이미지 스플리팅 : 이미지가 합쳐있는 하나의 이미지 다운로드 → position을 이용하여 이미지 표기코드 압축 : 개행 문자, 빈칸을 없애 코드의.. 2024. 5. 19. [CS / 네트워크] 2.4 IP 주소 안녕하세요! 개발감자입니다.오늘은 CS의 네트워크 중에서도 2.4 IP주소에 대해서 정리해보았습니다. 2.4 IP 주소 인터넷 계층에서는 IP 주소를 씀2.4.1 ARP컴퓨터간의 통신 : IP 주소에서 ARP를 통해 MAC 주소를 기반으로 통신함ARP (Address Resolution Protocol)IP 주소로부터 MAC 주소를 구하는 IP 와 MAC 주소의 다리 역할을 하는 프로토콜논리적 주소 → 물리적 주소로 변환RARP물리적 주소 → 논리적 주소로 변환 2.4.2 홉바이홉 통신IP 주소를 통해 통신하는 과정 (hop by hop)통신 장치에 있는 라우팅 테이블의 IP 를 통해 시작 주소부터 시작하여 다음 IP로 계속해서 이동하는 라우팅의 과정을 거쳐 패킷이 최종 목적지까지 도달하는 통신 라우팅 .. 2024. 5. 18. [CS / 네트워크] 2.3 네트워크 기기 안녕하세요! 개발감자입니다.오늘은 CS의 네트워크 중에서도 2.3 네트워크 기기에 대해서 정리해보았습니다. 2.3 네트워크 기기2.3.1 네크워크 기기의 처리 범위계층별로 처리 볌위 나눌 수 있음.상위계층을 처리하는 기기는 하위 계층을 처리할 수 있지만, 그 반대는 불가함.계층 별 네트워크 기기 정리애플리케이션 계층 : L7 스위치인터넷 계층 : 라우터, L3 스위치데이터 링크 계층 : L2 스위치, 브리ㅣㅈ물리 계층 : NIC, 리피터, AP2.3.2 애플리케이션 계층을 처리하는 기기L7 스위치여러 장비를 연결, 데이터 통신 중재, 목적지가 연결된 포트로만 전기 신호를 보내 데이터를 전송하는 통신 네트워크 장비로드밸런서라고도 함.서버의 부하를 분산하는 기기클라이언트로부터 오는 요청들을 뒤쪽의 여러 서버.. 2024. 5. 17. [CS / 네트워크] 2.2 TCP/IP 4계층 모델 안녕하세요! 개발감자입니다.오늘은 CS의 네트워크 중에서도 2.2 TCP/IP 4계층 모델에 대해서 정리해보았습니다. 2.2 TCP/IP 4계층 모델인터넷 프로토콜 스위트인터넷에서 컴퓨터들이 서로 정보를 주고 받는 데 쓰이는 프로토콜의 집합TCP/IP 4계층 혹은 OSI 7계층 모델로 설명하기도 함2.2.1 계층 구조TCP/IP 계층OSI 7계층과 많이 비교함.링크 : 데이터 링크, 물리애플리케이션 : 애플리케이션, 프레젠테이션, 세션애플리케이션 계층FTP, HTTP, SSH 등 응용 프로그램이 사용되는 프로토콜 계층이메일 등 서비스를 실질적으로 사람들에게 제공하는 층전송 계층송신자와 수신자를 연결하는 통신 서비스를 제공하며 연결 지향 데이터 스트림 지원, 신뢰성, 흐름 제어를 제공할 수 있으며 애플리케.. 2024. 5. 15. [CS / 네트워크] 2.1 네트워크의 기초 안녕하세요! 개발감자입니다.오늘은 CS의 네트워크 중에서도 2.1 네트워크의 기초에 대해서 정리해보았습니다. 2.1 네트워크의 기초네트워크 : 노드와 링크가 서로 연결되어 있거나 연결되어 있으며 리소스를 공유하는 집합노드 : 네트워크 장치 (서버, 라우터, 스위치 )링크 : 유선 또는 무선을 의미 2.1.1 처리량과 지연 시간좋은 네트워크를 만드는 것이 중요함.좋은 네트워크 : 많은 처리량, 짧은 지연시간, 적은 장애 빈도, 좋은 보얀을 갖춘 네트워크처리량(throughput) : 링크를 통해 전달되는 단위 시간 당 데이터단위 : bps(bits per second) : 초당 전송 또는 수신되는 비트 수영향을 받는 요소사용자들의 트래픽네트워크 장치 간의 대역폭 (주어진 시간 동안 네트워크 연결을 통해 .. 2024. 5. 7. [CS] 1-1. 싱글톤 패턴 (singleton pattern) 안녕하세요. 개발감자입니다. 오늘은 싱글톤 패턴에 대해서 이야기해보겠습니다. 1. 싱글톤 패턴 1-1. 싱글톤 패턴이란? 하나의 클래스에서 오직 하나의 인스턴스만 가지는 패턴입니다. 1-2. 싱글톤 패턴 코드 1) 코드 1 class Singleton { private static class SingleInstanceHolder { private static final Singleton INSTANCE = new Singleton(); } public static Singleton getInstance() { return SingleInstanceHolder.INSTANCE; } } public class HelloWorld { public static void main(String[] args) { S.. 2024. 1. 10. [CS] 1. 디자인 패턴 (feat. 라이브러리, 프레임워크) 안녕하세요, 개발감자입니다. 개발자가 되기 위해서 갖추어야 하는 지식 중 하나인 컴퓨터 과학에 대해서 공부하려고 합니다. 이 포스팅은 면접을 위한 CS 전공지식 노트를 기반으로 작성되었으며 더 부족한 부분은 추가하여 작성됩니다. Ch1 에서는 라이브러리나 프레임워크의 기본이 되는 디자인 패턴, 로직 구성에 대한 시각이 담겨있는 프로그래밍 패러다임에 대해 공부할 예정입니다. 1. 라이브러리와 프레임워크에 대한 개념 정리 1-1. 라이브러리 공통적으로 사용될 수 있는 특정한 기능들을 모듈화 한것 프레임워크에 비해 자유롭다 1-2. 프레임워크 공통적으로 사용될 수 있는 특정한 기능들을 모듈화한 것 라이브러리에 비해 엄격함 (폴더명, 파일명 등에 대한 규칙 있음) 2. 디자인 패턴 디자인 패턴은 객체 간의 상호.. 2024. 1. 10. 이전 1 2 다음