본문 바로가기

분류 전체보기86

[PintOS] Project 2 - User Programs (1) Argument passing https://velog.io/@yerimii11/PintOS-Project-2-User-Programs-1 2022년 1월 11일에 작성된 게시글 아카이브입니다. (사유: 블로그이전) [PintOS] Project 2 - User Programs (1) Argument passing 만약 추가 과제의 테스트케이스를 도전하고 싶으면 userprog/Make.vars를 수정하라.TODO가 없는 코드는 수정할 필요가 없다.We allow more than one process to run at a time. Each process has one thre velog.io - Keyword User mode vs. Kernel mode Process - Process Environment block (PEB) .. 2022. 10. 24.
[PintOS] About OS, Process, Thread https://velog.io/@yerimii11/%EC%9A%B4%EC%98%81%EC%B2%B4%EC%A0%9C 2022년 1월 4일에 작성된 게시글 아카이브입니다. (사유: 블로그이전) [PintOS] About OS, Process, Thread • 커널 : Linux 운영 체제(OS)의 주요 구성 요소이며 컴퓨터 하드웨어와 프로세스를 잇는 핵심 인터페이스이다. OS내에 위치하며, 하드웨어의 모든 주요 기능을 제어한다. • 커널의 기능 메모리 velog.io 운영체제 커널 • 커널 : Linux 운영 체제(OS)의 주요 구성 요소이며 컴퓨터 하드웨어와 프로세스를 잇는 핵심 인터페이스이다. OS내에 위치하며, 하드웨어의 모든 주요 기능을 제어한다. • 커널의 기능 1. 메모리 관리: 메모리가 어디에.. 2022. 10. 24.
[PintOS] Project 1 - Alarm Clock, Priority, Donate https://velog.io/@yerimii11/PintOS-project-1-Alarm-Clock 2021년 12월 30일에 작성된 게시글 아카이브입니다. (사유: 블로그이전) [PintOS] Project 1 - Alarm Clock, Priority, Donate timer_sleep()은 커서를 1초에 한 번 깜박이는 것과 같이 실시간으로 작동하는 스레드에 유용하다. timer_sleep() 함수는 밀리초나 다른 단위가 아닌 타이머 눈금 단위로 표현된다. 초당 TIMER_FREQ 타이머 velog.io PintOS 실행하기 핀토스 실행 우리는 핀토스라는 시뮬레이터에서 핀토스를 편리하게 실행할 수 있는 프로그램을 제공했습니다. 가장 간단한 경우, pintos 인수로 pintos를 호출할 수 있습니.. 2022. 10. 24.
[Spring] Servlet Servlet이란? 서블릿은 클라이언트의 요청을 처리하고, 그 결과를 반환하는 Servlet 클래스의 구현 규칙을 지킨 자바 웹 프로그래밍 기술입니다. 동적 웹 페이지를 만들 때 사용되는 자바 기반의 웹 애플리케이션 프로그래밍 기술로서 자바 코드 속에 HTML 코드가 들어가는 형태입니다. 예를 들어, 어떠한 사용자가 로그인을 하려고 할 때. 사용자는 아이디와 비밀번호를 입력하고, 로그인 버튼을 누릅니다. 그때 서버는 클라이언트의 아이디와 비밀번호를 확인하고, 다음 페이지를 띄워주어야 하는데, 이러한 역할을 수행하는 것이 바로 서블릿(Servlet)입니다. 그래서 서블릿은 자바로 구현 된 CGI라고 흔히 말합니다. HTTP 프로토콜 서비스를 지원하는 javax.servlet.http.HttpServlet .. 2022. 10. 20.
[Java] JVM 구조 JVM이란? JVM은 Java Virtual Machine의 약자로, 자바 가상 머신이라고 부릅니다. 그리고 자바와 운영체제 사이에서 중개자 역할을 수행하며, 자바가 운영체제에 구애 받지 않고 프로그램을 실행할 수 있도록 도와줍니다. 또한, 가비지 컬렉터를 사용한 메모리 관리도 자동으로 수행하며, 다른 하드웨어와 다르게 레지스터 기반이 아닌 스택 기반으로 동작합니다. 아래는 자바 프로그램의 실행 단계입니다. 먼저, 자바 컴파일러에 의해 자바 소스 파일은 바이트 코드로 변환됩니다. 이러한 바이트 코드를 JVM에서 읽어 들인 다음에, 여러 과정을 거쳐서 어떤 운영체제든 간에 프로그램을 실행할 수 있도록 만드는 것입니다. 자바는 JVM이 운영체제와 프로그램 사이에서 해당 운영체제에 맞게 변환하여 전달하기 때문.. 2022. 10. 19.
[WEEK07] 네트워크 - Tiny.c, Proxy.c (코드&주석) https://velog.io/@yerimii11/WEEK07-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-Tiny.c-Proxy.c-%EC%BD%94%EB%93%9C%EC%A3%BC%EC%84%9D 2021년 12월 26일에 작성된 게시글 아카이브입니다. (사유: 블로그이전) [WEEK07] 네트워크 - Tiny.c, Proxy.c (코드&주석) 나머지 코드는 여기로! velog.io [11.11 과제 테스트 사진(telnet(클라이언트)에서 GET요청하기)] Tiny.c (컴퓨터시스템 교재 11.11 숙제까지 끝마친 상태) 편하게 보려면 여기로 /* $begin tinymain */ /* * tiny.c - A simple, iterative HTTP/1.0 Web server .. 2022. 10. 19.