CPU 스케줄링의 목적일반적으로 사용자 프로그램이 수행되는 과정은 CPU 작업과 I/O 작업의 반복으로 구성된다. CPU 작업은 레지스터 간의 연산 및 메모리 접근 등으로 이루어지기 때문에 빠르게 수행될 수 있다. 반면 I/O 작업의 경우, CPU의 제어권이 운영체제 커널로 넘어갈 뿐 아니라 상대적으로 매우 느린 입출력 장치의 접근이 필요하게 된다. 전자를 CPU 버스트라고 하고, 후자를 I/O 버스트라고 한다.CPU 버스트(burst) : 사용자 프로그램이 직접 CPU를 가지고 빠른 명령을 수행하는 일련의 단계I/O 버스트(burst) : 커널에 의해 입출력 작업을 진행하는 비교적 느린 단계각 프로그램마다 CPU 버스트와 I/O 버스트가 차지하는 비율이 균일하지는 않다. CPU 버스트가 길게 나타나는 ..
스프링을 사용해 웹 애플리케이션을 개발해 본 적이 있는 개발자라면, 상당히 간단하게 컨트롤러 클래스를 작성해 본 경험이 있을 것이다. 근데 가만 생각해 보면, 클라이언트의 요청에 맞게 호출될 수 있도록 URL을 매핑해 주고, 비즈니스 로직을 넣고, 또 경우에 따라서는 뷰 로직도 들어가야 하는 “컨트롤러” 클래스가 그렇게 간단할 수 없다.이는 스프링 MVC 프레임워크가 비즈니스 로직 이외의 반복적이고 귀찮은 작업들을 처리해 주고 있기에 가능한 것이다. 그것도 아주 깔끔한 객체 지향적인 설계로 말이다. 때문에 개발자는 클라이언트의 다양한 HTTP 요청을 입맛에 맞게 처리할 수 있는 컨트롤러를 간단히 구현할 수 있다.스프링 MVC도 처음에는 이런저런 기능 부족과 불편함 때문에 외면받기도 했다. 하지만 애노테이..
Git Branch모든 버전 관리 시스템은 브랜치(Branch)를 지원한다. 개발을 하다 보면 코드를 여러 개로 복사해야 하는 일이 자주 생긴다. 코드를 통째로 복사하고 나서 원래 코드와는 상관없이 독립적으로 개발을 진행할 수 있는데, 이렇게 독립적으로 개발하는 것이 브랜치다.Git의 브랜치 모델은 다른 VCS들과 다르며, 최고의 장점으로 손꼽힌다. Git의 브랜치는 매우 가볍다. 순식간에 브랜치를 새로 만들고 브랜치 사이를 이동할 수 있다. 때문에 이전의 코드를 그대로 가져와 독립적인 개발을 진행할 수 있다는 브랜치의 생성 목적에 맞게 활용할 수 있으면서도 리스크를 줄일 수 있었다.브랜치(Branch)란 무엇인가Git이 브랜치를 다루는 방법을 알아보기 위해 예시를 들어 보겠다.➜ branch-ex g..
- Total
- Today
- Yesterday
- 파이썬 for Beginner 연습문제
- 지옥에서 온 git
- 프로그래머스
- 스프링 테스트
- Python Cookbook
- 방명록 프로젝트
- Do it! 정직하게 코딩하며 배우는 딥러닝 입문
- Spring Data JPA
- git
- 스프링 mvc
- git merge
- JPA
- 스프링 컨테이너
- 쉽게 배우는 운영체제
- Gradle
- 패킷 스위칭
- Computer_Networking_A_Top-Down_Approach
- 쉘 코드
- jsp
- git branch
- 선형 회귀
- Spring
- 운영체제 반효경
- spring mvc
- 생활코딩 javascript
- 스프링
- Spring Boot
- Thymeleaf
- 파이썬 for Beginner 솔루션
- 김영환
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |