전체 글
[알고리즘] 재귀 호출
재귀 호출의 일반적인 형태 일반적인 형태 1 def function(입력): if 입력 > 일정값: # 입력이 일정 값 이상이면 return function(입력 - 1) # 입력보다 작은 값 else: return 일정값, 입력값 또는 특정값 # 재귀 호출 종료 일반적인 형태 2 def function(입력): if 입력
![[운영체제]03_프로세스 관리#1](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FboHLKf%2FbtrFolX2Ngq%2FAAAAAAAAAAAAAAAAAAAAALlLniOhVchyNtmIMqFSkwmyBsx0uxUGrtWB-OMF8Hu-%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1756652399%26allow_ip%3D%26allow_referer%3D%26signature%3DoxKU8ryqjBIEm7MBCmJS2WsWHGM%253D)
[운영체제]03_프로세스 관리#1
목차 운영체제 개요 컴퓨터시스템의 구조 프로세스 관리 CPU 스케줄링 병행 제어 데드락 메모리 관리 가상 메모리 파일 시스템 입출력 시스템 디스크 관리 프로세스의 개념 "Process is a program in execution" - 프로세스는 실행중인 프로그램이다. 프로세스의 문맥 CPU의 수행 상태를 나타내는 하드웨어 문맥 Program Counter 각종 register 프로세스의 주소 공간 code, data, stack 프로세스 관련 커널 자료 구조 PCB(Process Control Block) Kernel stack 프로세스의 상태 프로세스는 상태(state)가 변경되며 수행된다. Running CPU를 잡고 instruction을 수행중인 상태 Ready CPU를 기다리는 상태(메모리 등..
[JSP]세션과 쿠키
JSP 세션(Session) JSP 웹 문서의 쿠키와 다르게, 웹 브라우저에 사용자의 상태를 유지하고 정보를 보관하는 것이 아니라 웹 브라우저에 사용자의 상태를 유지하고 정보를 보관하기 위해 웹 서버 쪽의 웹 컨테이너에 사용자의 정보를 저장할 때 사용한다. 세션은 웹 브라우저에 사용자의 상태를 유지하고 정보를 보관하기 위해 javax.servlet.http 패키지의 HttpSession 인터페이스를 구현해서 사용한다. 세션은 하나의 웹 브라우저에 하나의 세션이 생성되어 웹 컨테이너에 저장된다. 웹 서버는 각각의 웹 브라우저로부터 발생한 요청에 대해 식별자를 부여한다. 식별자를 부여한 다음에 부여한 식별자를 웹 브라우저에 발생한 요청들과 비교한 후 동일한 식별자를 구별하게 된다. 이렇게 부여된 식별자에 특..
[JSP]JSP의 두 가지 문법 형태
JSP 문법 JSP 문법은 jsp 태그를 이용해 작성하는데, 두 가지 형태로 분류된다. 이 두 가지 형태는 스크립트 태그를 이용해 작성하는 방법과 액션 태그를 이용해 작성하는 방법이다. 스크립트 태그 종류 형식 설명 지시문 현재 JSP 웹 문서를 처리하기 위한 각종 정보를 톰캣으로 전달하는 역할 선언문 JSP의 스크립트릿(Scriptlet), 표현식의 멤버 변수, 멤버 메서드를 작성할 때 사용 스크립트릿문 JSP의 스크립트 코드를 지정하는 문으로 JSP 문서에 Java 명령문으로 프로그램 로직을 작성할 때 사용 표현식문 변수의 값이나 간단한 문자열을 출력할 때 사용 주석문 JSP 웹 문서에 주석 내용을 입력할 때 사용 액션 태그 JSP 액션 태그는 다른 JSP의 웹 문서 실행을 포함시키거나 제어하기 위해..
[JSP]JSP&Servlet 이해
1-1. JSP(Java Server Pages)의 개념 JSP는 Java Server Page의 약자이며, Java 언어를 기반으로 하는 서버 사이드 스크립트 언어(Server Side Script Language)로 HTML 코드에 Java 코드를 넣어 동적인 웹 페이지를 생성하는 웹 어플리케이션 도구이다. 1-2. JSP의 특징 JSP는 스크립트 언어이기 때문에 자바 기능을 그대로 사용할 수 있다. Tomcat(WAS)이 이미 만들어 놓은 객체를 사용한다. request : the Http ServletRequest Object response : the HttpServletResponse Object session : the HttpSession Object out : the PrintWriter..
![[운영체제]02_컴퓨터시스템의 구조](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2Fl43Vy%2FbtrEwkeKNCv%2FAAAAAAAAAAAAAAAAAAAAACTYVhhegJlz25EysHtoVZs7A2fQmmkittLtItDHziuU%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1756652399%26allow_ip%3D%26allow_referer%3D%26signature%3DWym%252BqbBXxsJcJJiXi9oOBfLzwwM%253D)
[운영체제]02_컴퓨터시스템의 구조
목차 운영체제 개요 컴퓨터시스템의 구조 프로세스 관리 CPU 스케줄링 병행 제어 데드락 메모리 관리 가상 메모리 파일 시스템 입출력 시스템 디스크 관리 컴퓨터시스템 구조 Mode bit 사용자 프로그램의 잘못된 수행으로 다른 프로그램 및 운영체제에 피해가 가지 않도록 하기 위한 보호 장치가 필요 Mode bit을 통해 하드웨어적으로 두 가지 모드의 operation 지원 1 사용자 모드 : 사용자 프로그램 수행 0 모니터 모드 : OS 코드 수행 보안을 해칠 수 있는 중요한 명령어는 모니터 모드에서만 수행 가능한 '특권명령'으로 규정 Interrupt나 Exception 발생시 하드웨어가 mode bit을 0으로 바꿈 사용자 프로그램에게 CPU를 넘기기 전에 mode bit을 1로 셋팅 Timer 타이머..
![[Spring]좋은 객체 지향 설계를 위한 5가지 원칙 - SOLID](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FLO7KZ%2FbtrEuzjAOKd%2FAAAAAAAAAAAAAAAAAAAAAOoR_O_k1VvB2QXwczPeJBqffhAFbq2bBuUKKolqTbgl%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1756652399%26allow_ip%3D%26allow_referer%3D%26signature%3DRcQpcMQKC4nf%252BcxQr6jGKJRknw8%253D)
[Spring]좋은 객체 지향 설계를 위한 5가지 원칙 - SOLID
SOLID 클린코드로 유명한 로버트 마틴이 좋은 객체 지향 설계를 위한 5가지 원칙을 정리 SRP : 단일 책임 원칙(Single Resoponsibility Principle) OCP : 개방-폐쇄 원칙(Open/Closed Principle) LSP : 리스코프 치환 원칙(Liskov Substitution Principle) ISP : 인터페이스 분리 원칙(Interface segregation Principle) DIP : 의존관계 역전 원칙(Dependency Inversion Principle) SRP : 단일 책임 원칙(Single Resoponsibility Principle) 한 클래스는 하나의 책임만 가져야 한다. 하나의 책임이라는 것은 모호하다. 클 수 있고, 작을 수 있다. 문맥과 ..

스프링 웹 개발 기초
스프링 웹 개발 방식 세 가지 정적 컨텐츠 MVC와 템플릿 엔진 API 1. 정적 컨텐츠 서버 없이 파일을 그냥 그대로 웹 브라우저에 내려 주는 것 https://docs.spring.io/spring-boot/docs/2.3.1.RELEASE/reference/html/spring-boot-features.html#boot-features-spring-mvc-static-content Spring Boot Features Graceful shutdown is supported with all four embedded web servers (Jetty, Reactor Netty, Tomcat, and Undertow) and with both reactive and Servlet-based web app..
![[운영체제]01_운영체제 개요](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FcEoatT%2FbtrEzJxMwXy%2FAAAAAAAAAAAAAAAAAAAAAA8QzvgFvKvm1H5vEaj-5DYXVPOnO_a21DZID2fHWV5K%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1756652399%26allow_ip%3D%26allow_referer%3D%26signature%3D0rA%252F0f9iYlWs1uPLt%252F1y1tht7fU%253D)
[운영체제]01_운영체제 개요
목차 운영체제 개요 컴퓨터시스템의 구조 프로세스 관리 CPU 스케줄링 병행 제어 데드락 메모리 관리 가상 메모리 파일 시스템 입출력 시스템 디스크 관리 운영체제란 무엇인가? 운영체제(Operating System, Os)란? 컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층 협의의 운영체제(커널) 운영체제의 핵심 부분으로 메모리에 상주하는 부분 광의의 운영체제 커널 뿐 아니라 각종 주변 시스템 유틸리티를 포함한 개념 운영체제의 목적 1) 컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공 운영체제는 동시 사용자/프로그램들이 각각 독자적 컴퓨터에서 수행되는 것 같은 환상을 제공 하드웨어를 직접 다루는 복잡한 부분을 운영체제가 대행 2) 컴퓨터 시스템..