본문 바로가기

개발 지식13

[CS]컴퓨터 주요 구성 요소(CPU, Memory, IO Devices, System Bus), 메모리 계층과 각 메모리 특징 📌 메모리 계층(Memory Hierarchy)이란? = 메모리를 필요에 따라 여러 가지 종류로 나누어 둠을 의미한다. 이때 필요한 대부분의 경우 CPU가 메모리에 더 빨리 접근하기 위함이다. 위 그림처럼 계층 구조에서 상위의 기억장치일수록 접근 속도와 접근 시간이 빠르지만, 기억 용량이 적고 고가이다. 아래로 내려갈수록 상대적으로 비용은 내려가고 접근 속도는 느리지만 기억 용량이 크다. 📌 기억 장치(Memory Unit)? 컴퓨터에서 사용하는 프로그램과 처리할 데이터 및 처리한 결과 등을 저장하는 장치. 컴퓨터에서 사용하는 모든 프로그램과 데이터를 저장해 두고 필요할 때 이용할 수 있도록 해준다. 기억 장치는 처리 속도와 사용 용도, 기억 용량의 크기에 따라 아래와 같이 4가지로 구분된다. 레지스터(.. 2023. 1. 14.
![잘못 push한 commit 되돌리고 다시 올리기] / .gitignore에서 특정 파일이 무시되는 문제 해결 ✏️ 내가 겪은 문제 gitignore에 적었음에도 특정 폴더만 gitignore을 ignore🤣 무시하는 문제가 있어서 찾아보다가 방법 중 git rm -rf --cached . 방법이 있어서 해봤는데.. [참고] https://stackoverflow.com/questions/3833561/why-doesnt-git-ignore-my-specified-file Why doesn't Git ignore my specified file? I added the following line to .gitignore: sites/default/settings.php but when I type git status it shows the file as unstaged file. What's the problem?.. 2023. 1. 5.
정규표현식(regular expression)이란? + 쉽게 공부하는 사이트 정규표현식(regular expression)이란? 정규 표현식 또는 정규식은 특정한 규칙을 가진 문자열의 집합을 표현하는 데 사용하는 형식 언어이다. 정규 표현식은 많은 텍스트 편집기와 프로그래밍 언어에서 문자열의 검색과 치환을 위해 지원하고 있다. 웹 프로그래밍을 공부하다 잠깐 정규표현식을 사용하는 걸 보고 '오 편리하네 근데 좀 복잡하다~ 어렵다~'라고 생각했는데 막상 공부해보니 이해하고 간단 규칙만 알면 쉽게 사용할 수 있었다. 정규표현식이 있는 것에 감사해야겠다. 공부 추천 사이트 드림코딩 유튜브 드림엘리님 유튜브를 보고 간단하게 규칙을 파악할 수 있었다. 문법 정리 레포 추가 공부 사이트 영상 속 예시 (https://regexr.com/5mhou) - 이나 . 또는 띄어쓰기로 구분된 전화번호.. 2022. 12. 19.
[cs50 모두를 위한 컴퓨터 과학] 자료구조(Data Structure) 📝 연결 리스트(Linked list) 배열에서는 각 인덱스의 값이 메모리상에서 연이어 저장되어 있다. 하지만 각 값이 메모리상의 여러 군데 나뉘어져 있다고 하더라도 바로 다음 값의 메모리 주소만 기억하고 있다면 여전히 값을 연이어서 읽어들일 수 있다. ⇒ 이를 ‘연결 리스트’라고 한다. 3은 다음 값이 없기 때문에 NULL(\n, 즉 0)을 다음 값의 주소로 저장한다. typedef struct node { int number; struct node *next; } node; - 연결리스트를 구조체로 정의한 것 배열과 비교해 연결 리스트는 새로운 값을 추가할 때 다시 메모리를 할당하지 않아도 되는 장점이 있다. But, 연결 리스트에 값을 추가하거나 검색하는 경우 이를 위해 해당 위치까지 연결 리스트의.. 2022. 10. 2.
[cs50 모두를 위한 컴퓨터 과학] 메모리(Memory) 메모리 주소, 포인터 C에서는 변수의 메모리상 주소를 받기 위해 '&’이라는 연산자를 사용. #include int main(void) { int n = 50; printf("%p\\n", &n); } 예를 들어, 위와 같은 코드를 실행하면 ‘0x7ffe00b3adbc’와 같은 값을 얻을 수 있고, 이는 변수 n의 16진법으로 표현된 메모리의 주소이다.(보안상 실행시 위치가 매번 바뀜) 반대로 '*'를 사용하면 그 메모리 주소에 있는 실제 값을 얻을 수 있다. 16진수의 유용성 16진수(Hexadecimal)로 표현하면 2진수로 표현했을 때 보다 훨씬 간단해지고 컴퓨터는 8개의 비트가 모인 바이트 단위로 정보를 표현하므로 2개의 16진수는 2진수로 변환되기 때문에 정보를 표현하기 매우 유용하다. 64bi.. 2022. 9. 22.
[웹개발] HTTP 응답 상태 개발 공부하며 오류에 보이는 숫자와 성공적으로 응답 받았을 때 숫자가 다른 것을 보며 어떤 의미인지 찾아보았다. HTTP 응답 상태 코드 목록 1xx (정보(조건부 응답)): 요청을 받았으며 프로세스를 계속한다 2xx (성공): 요청을 성공적으로 받았으며 인식했고 수용하였다 3xx (리다이렉션 완료): 요청 완료를 위해 추가 작업 조치가 필요하다 4xx (클라이언트(요청) 오류): 요청의 문법이 잘못되었거나 요청을 처리할 수 없다 5xx (서버 오류): 서버가 명백히 유효한 요청에 대해 충족을 실패했다 예시에서 보듯이 성공적으로 응답받으면 200을 보여주고 오류가 나면 400, 500을 보여준다. 숫자를 확인하면 대략적으로 무슨 오류인지 확인할 수 있어 알고나면 도움이 된다. HTTP란? HTTP란 '하.. 2022. 9. 17.