일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 사이드프로젝트
- 소켓
- corou
- 리액트
- 알고리즘
- 나만무
- 핀토스
- 크래프톤 정글
- JavaScript
- 시스템콜
- 코드트리
- 자바
- userprog
- 자바스크립트
- 4기
- 티스토리챌린지
- Vue.js
- defee
- CSS
- 오블완
- HTML
- TiL
- 스택
- 모션비트
- 백준
- 크래프톤정글
- 큐
- Flutter
- pintos
- Java
- Today
- Total
목록코딩 (368)
미새문지
평균 반응 시간(Average response time) 시스템이 사용자의 요청에 응답하는데 걸리는 시간의 평균을 의미하며, 특히 대화형 시스템에서 중요한 성능 지표로 사용되며, 사용자 경험에 큰 영향을 미친다. 평균 반응 시간 계산 먼저 요청의 반응 시간을 측정한다.(반응 시간은 요청이 시스템에 도착한 시점부터 시스템에 해당 요청에 대한 응답을 완료한 시점까지의 시간이다. 모든 요청의 반응 시간을 합산하며, 총합을 요청의 개수로 나눈다. 다단계 큐 스케줄링(MultiLevel Queue Scheduling, MLQ) 우선순위마다 준비 큐 형성 항상 가장 높은 우선순위 큐의 프로세스에 CPU를 할당 (우선순위가 낮은 큐에서 작업 실행 중이더라도 상위 단계의 큐에 프로세스가 도착하면 CPU를 빼앗는 선점형..
CPU 스케줄링 알고리즘 CPU 스케줄링은 다중 프로그램 환경에서 CPU의 사용 시간을 효율적으로 분배하기 위한 방법이다. 이를 통해 시스템의 성능을 최적화하고, 대기 시간을 최소화하며, CPU 사용률을 극대화하는 것이 목표이다. 알고리즘 종류 선입선출 스케줄링(First-Come, First-Served Scheduling - FCFS) 이 알고리즘은 먼저 도착한 프로세스부터 처리하는 알고리즘이다. 프로세스 실행 시간을 예측하기 쉽고 단순하고 공평하지만 CPU 버스트 시간이 긴 프로세스가 먼저 도착하면 다른 프로세스들은 긴 대기 시간을 감수해야 하는 ‘호흡성’ 문제가 발생할 수 있다. 최단 작업 우선 스케줄링(Shortest Job Next Scheduling- SJN) 이 알고리즘은 CPU 버스트 시..
Tiny Server Code tiny.c 더보기 #include "csapp.h" void doit(int fd); void read_requesthdrs(rio_t *rp); int parse_uri(char *uri, char *filename, char *cgiargs); void serve_static(int fd, char *filename, int filesize, char *method); void get_filetype(char *filename, char *filetype); void serve_dynamic(int fd, char *filename, char *cgiargs, char *method); void clienterror(int fd, char *cause, char *er..
CGI(Common Gateway Interface) 웹 서버와 독립적인 소프트웨어 혹은 스크립트 간에 정보를 주고 받는 방식 이는 사용자가 웹페이지에 입력한 정보를 서버에 전달하거나, 서버에서 처리한 데이터를 사용자에게 보여주는 등의 역할을 한다. 특징 언어 독립성 CGI 스크립트는 Java, Python, C, 등 다양한 프로그래밍 언어로 작성될 수 있으며, 이는 웹 서버와 프로그래밍 언어 간의 통신을 가능하게 한다. 독립적인 프로세스 각각의 CGI 요청은 별도의 프로세스로 처리된다. 이는 간단하고 안전한 동작을 가능하게 하지만, 많은 요청을 동시에 처리할 때는 오버헤드가 커질 수 있다. 표준 입출력을 통한 데이터 전송 CGI 프로그램은 표준 입력을 통해 웹 서버로부터 정보를 받고, 표준 출력을 통해..
'-' 특수문자 제거 input.replace(/\-/g,''); 시작 부분의 공백 제거 input .replace(/^\s+/,''); 끝 부분의 공백 제거 input .replace(/\s+$/,''); 앞뒤 둘 공백 제거 input .replace(/^\s+|\s+$/g,''); 출력값의 모든 공백 제거 input .replace(/\s/g,''); \n(줄바꿈 문자) 제거 input .replace(/\n/g,''); \r(리턴 문자) 제거 input .replace(/\r/g,''); 백준 문제 풀 때나 배열로 받아온 문자를 출력할 때 출력값 뒤에 \r이나 \n이 붙는 경우가 있다. 위의 코드를 이용해 이 부분을 제거하여 깔끔하게 출력이 가능
Telnet 로컬 네트워크 내에서 직접 연결된 것처럼 리모트 컴퓨터에 로그온하여 사용할 수 있도록 하는 프로토콜이다. 초기에 상용된 원격 접속 프로그램이며, 보안에 취약점이 많아 최근에 SSH로 대체되어 거의 사용하지 않는다. 실제로 사용하는 시스템(보통 pc)은 Telnet 클라이언트인데, Telnet서버는 클라이언트가 접속되어 있는 리모트 컴퓨터이다. TCP/IP는 클라이언트와 서버 모두를 지원한다. 가장 중요한 기능 중 하나는 Telnet 클라이언트와 서버 사이에서 데이터 스트림의 전송을 협상하는 기능이다. 이 협상 유형은 클라이언트 또는 서버가 요청을 시작하거나 받아들일 수 있게 한다. 오늘의 잔디심기 백준 1173 JavaScript 브론즈2 운동 const fs = require("fs"); ..
코드의 테스트를 할 때 사용하는 Makefile파일에서 제목의 에러가 발생하는 경우가 있다. 이 에러는 Makefile에서 규칙을 작성할 때 잘못된 공백 문자가 사용되거나, 명령어 부분을 구분하는 Tab 문자가 없을 때 발생한다. Makefile 뒤의 line-number는 에러가 난 줄 번호를 출력한다. 즉, 그 라인의 Makefile을 만들던 중 오류가 발생했다라는 표시 이 에러의 해결점은 탭(Tab) 대신에 공백(spacebar)가 들어갔는지 확인을 일일이 해줘야 한다. 혹은 작성한 코드 위에 불필요한 공백이 있는지도 확인해보면 좋을 것 같다. 공백 부분을 잘 수정하면 make시 올바르게 생성됨을 볼 수 있다.
망의 구성 형태 네트워크는 여러 컴퓨터나 기기들이 상호 연결되어 데이터를 주고 받을 수 있는 구조이다. 네트워크의 망 구성은 이러한 기기들이 어떻게 연결되어 있는지에 대한 형태이며, 이는 데이터 전송 효율성, 비용, 확장성 등 여러 측면을 고려해 설계된다. Star형(성형, 중앙 집중형) 모든 노드가 중앙 노드에 1:1(Point-to-Point)로 연결되어 있는 방식 중앙 노드의 고장 없이는 매우 안정적인 네트워크를 구성할 수 있다. 고장 발견이 쉽고, 확장성과 유지보수에 용이하다. Mesh형(망형) 모든 노드가 서로 직접 연결되어 있는 방식 응답 시간이 빠르고 노드의 연결성이 높다. 높은 연결성과 신뢰성을 제공하지만, 회선 수가 많아져 비용이 많이 들고 관리가 복잡하다. ..