IT/CS지식
-
컴퓨터 BIOS/CMOS란? 정의와 차이점IT/CS지식 2024. 9. 13. 14:40
📝 BIOS(Basic Input/Output System) 이란? 바이오스는 컴퓨터가 동작하기 위해서 가장 기초가 되는 소프트웨어이다. 파워 버튼을 눌러 컴퓨터를 깨우면 제일 처음 연결된 CPU, 메모리, 입/출력 등을 인식하여 정상적으로 작동 중인지 체크하고 OS에서 이들을 사용할 수 있는 상태로 만들어주는 역할을 담당한다. 부팅 시 스피커가 달려있는 메인보드라면 삑~하는 비프음으로 장치들이 현재 정상적으로 작동하고있는지 신호를 보내주고 문제가 없다면 운영체제가 시작된다. 이 바이오스는 ROM에 설치되어 있으며 우리가 사용하는 다른 전자 장비(카메라, 이어폰 등)에서 사용하는 펌웨어 소프트웨어와 비슷한 개념이다. 바이오스는 롬(ROM)에 들어 있기 때문에 흔히 롬 바이오스라고 부른다. 롬은 읽..
-
[MSA] MSA란? 개념과 특징IT/CS지식 2023. 1. 25. 10:41
📑 MSA란? MicroService Architecture의 줄임말이다. 마이크로서비스는 애플리케이션을 느슨하게 결합된 서비스의 모임으로 구조화하는 서비스지향 아키텍쳐(SOA) 스타일의 일종인 소프트웨어 개발 기법이다. 더보기 서비스 지향 아키텍처(Service Oriented Architecture(SOA)) 란? - 애플리케이션 구성요소가 통신 프로토콜을 통해 다른 구성요소에 서비스를 제공하는 아키텍처 접근 방식 - 대규모 컴퓨터 시스템을 구축할 때의 개념으로 업무상에 일 처리에 해당하는 소프트웨어 기능을 서비스로 판단하여 그 서비스를 네티워크 상에 연동하여 시스템 전체를 구축해 나가는 방법론 - 여기서 서비스는 기능의 독립적 단위이다. 📑 MSA 등장 배경 Monolithic Architectur..
-
[IT용어] SSR vs CSR (서버사이드렌더링, 클라이언트사이드렌더링?)IT/CS지식 2022. 11. 25. 11:51
📑 브라우저 렌더링이란? 브라우저 렌더링이란, 브라우저가 서버로부터 요청해 받은 내용을 브라우저 화면(view)에 표시해주는 작업을 말한다. 즉) 브라우저가 서버로부터 HTML, CSS, JavaScript 문서를 전달받아 브라우저 엔진이 각 문서를 해석해 브라우저 화면을 그려주는 것이다. 브라우저 렌더링 방식엔 서버사이드렌더링, 클라이언트사이드렌더링 2가지가 있는데 하나씩 알아부도록 하자. 📑 클라이언트 사이드 렌더링(client side rendering) : 클라이언트 사이드 렌더링은 클라이언트인 브라우저가 렌더링을 처리하는 방식이다. 즉) 서버에서 받은 데이터를 통해 클라이언트인 브라우저가 화면(view)을 그리는 주체가 되는 것이다. 📌 장점 : 네이티브 앱과 비슷한 빠른 인터렉션을 구현할 수 ..
-
[Web] 서블릿(Servlet)이란? (+서블릿 컨테이너, 생명주기)IT/CS지식 2022. 10. 11. 01:02
📑 서블릿(Servlet)이란? 서블릿이란 Dynamic Web Page를 만들 때 사용되는 자바 기반의 웹 애플리케이션 프로그래밍 기술이다. 웹을 만들 때 다양한 요청(Request)와 응답(Response)이 있기 마련이고 이 요청과 응답에는 규칙이 존재한다. 서블릿은 이러한 웹 요청과 응답 흐름을 간단한 메서드 호출만으로 체계적으로 다룰 수 있게 해주는 자바 웹 프로그래밍 기술이다. 서블릿을 지원하는 WAS를 사용하면 서버에서 처리해야 하는 업무가 확연하게 줄어드는 걸 확인할 수 있다. 개발자는 그저 비즈니스 로직만 개발하면 되는 것이다. 서블릿은 자바 클래스로 웹 애플리케이션을 작성한 뒤 웹서버 안에 있는 웹 컨테이너에서 이것을 실행하고, 웹 컨테이너에서는 서블릿 인스턴스를 생성한 후 서버에서 실..
-
[web] Web Server와 WAS 차이점, 동작과정 알아보기IT/CS지식 2022. 10. 9. 22:30
📑 Static Pages와 Dynamic Pages 웹서버와 WAS의 차이를 알아보기 전에 정적페이지와 동적페이지에 대해 짚고 넘어가려한다. 🎃 Static Pages : Web Server는 파일 경로 이름을 받아 경로와 일치하는 file contents를 반환한다. 항상 동일한 페이지를 반환한다. ex) image, html, css, javascript 파일과 같이 컴퓨터에 저장되어 있는 파일들이 대표적이다. 🎃 Dynamic Pages : 인자의 내용에 맞게 동적인 contents를 반환한다. 웹 서버에 의해서 실행되는 프로그램을 통해 만들어진 결과물 ex) servlet 📑 Web Server란? 📌 개념 :웹 서버는 소프트웨어랑 하드웨어로 구분되는데 하드웨어는 web 서버가 설치되어 있는 컴..
-
[IT 용어] API vs 라이브러리 vs 프레임워크 알아보기IT/CS지식 2022. 9. 15. 19:20
자바 스페셜리스트가 되기 위한 덕목을 찾아보니 Learn APIs and Libraies가 있었다. 자바는 전세계에서 가장 인기있고 오래된 프로그래밍 언어이며 아주 다양한 라이브러리와 api가 존재하므로 몇몇 중요 API에 대한 경험이나 존재자체에 대해서 인지하고 있어야 된다. 라이브러리, API 공부하면서 많이 들어봤던 말인데 그 의미와 차이점에 대해 생각해보니 구체적으로 떠오르지 않아서 정리해보고자 한다. 라이브러리 (Library) 라이브러리란 응용 프로그램 개발을 위해 필요한 기능을 모아 놓은 소프트웨어이며, 그 기능에 대한 도구 또는 함수들의 집합이라고 할 수 있다. - 프로그래머가 어떠한 기능을 수행하기 위해 도움을 주는 또는 필요한 것을 제공해주는 역할을 하는 것. - 라이브러리는 재사용이 ..
-
[server] REST, REST API, RESTful 정의, 특징, 사용법IT/CS지식 2022. 9. 15. 11:07
REST에 대해 알아보기 전 알아보고 난 후 스프링 MVC 프로젝트를 이용해 REST를 적용하는 방식이 궁금하다면 아래 포스팅 참고! https://wonisdaily.tistory.com/69 [4-ch16 REST 방식] @RestController, ResponseEntity, @RequestParam , 어노테이션과 JSON 알아보기 모바일 시대가 되면서 WEB 분야의 가장 큰 변화는 서버 역할의 변화라고 할 수 있다. 과거에는 서버의 데이터를 소비하는 주체가 '브라우저'라는 특정한 애플리케이션으로 제한적이었다면, 모바 wonisdaily.tistory.com REST란? 'Representational State Transfer'의 약자로 자원을 이름으로 구분하여 자원의 상태(정보)를 주고 받는..
-
[메모리 구조] 힙(heap)영역과 & 스택(stack)의 차이IT/CS지식 2022. 6. 16. 16:10
메모리의 구조 프로그램이 실행되기 위해서는 먼저 프로그램이 메모리에 로드(load) 되어야 한다. 또한 프로그램에서 사용되는 변수들을 저장할 메모리도 필요하다. 따라서 컴퓨터의 운영체제는 프로그램의 실행을 위해 다양한 메모리 공간을 제공하고 있다. 프로그램이 운영체제로부터 할당받는 대표적인 메모리 공간은 아래와 같다. 1. 코드(code) 영역 : 메모리의 코드(code) 영역은 실행할 프로그램의 코드가 저장되는 영역으로 텍스트(code) 영역이라고 부른다. CPU는 코드 영역에 저장된 명령어를 하나씩 가져가서 처리하게 된다. 2. 데이터(data) 영역 : 메모리 데이터(data) 영역은 프로그램의 전역 변수와 정적(static)변수가 저장되는 영역이다. 데이터 영역은 프로그램의 시작과 함께 할당되며,..