OS 28

Windows Terminal 설정 업데이트

이전에는 JSON 파일을 직접 수정하면서 Shell 종류별로 Shell ID를 파악하고 폰트, 아크릴 설정을 하는 등등.. 설정에 어려움이 많았다. 최근에 Windows Terminal이 새로 업데이트 되면서 해당 설정 사항들이 전부 GUI로 편입됐다. 가장 편한 점은 Shell Profile이 새로 추가될 때마다 프로그램이 알아서 설정 GUI에 이를 추가해준다. 이전에는 WSL2를 위해 새로 추가되는 쉘을 수동으로 Windows Terminal 설정 JSON 파일에 추가해줘야 했다. 또한 여러 Appearance 관련 설정들 또한 GUI화와 한글화가 동시에 진행됐다! 새로운 설정에서는 폰트와 아크릴 설정을 위해서 JSON 파일을 직접 수정하지 않고 바로 확인해 볼 수 있다.

OS/Windows 2021.07.30

노트북 외장 그래픽 카드 죽이기

노트북에 있는 라데온 그래픽카드가 고장났다. 이 때문에 프리징 현상이 지속적을 발생한다. (as 센터에서 확인) 드라이버를 깔지 않아도 윈도우에서 자동으로 드라이버를 잡아버리는 바람에 프리징을 멈출 수가 없었다. 장치관리자에서 해당 그래픽카드를 제거해도 동일했다. 해결책 장치관리자(실행명령어 : hdwwiz.cpl)에서 해당 그래픽카드를 사용 안함으로 바꾼다. 이러면 드라이버가 깔려있어도 해당 그래픽카드로 인한 프리징 현상이 일어나지 않는다.

OS/Windows 2018.11.02

objdump을 통한 해부

바이너리 파일 해킹 시 사용되는 툴 리눅스는 아래의 a.c에서 만든 main()을 어떻게 실행시키는가. 요약 1. GCC는 crtbegin.o, crtend.o, gcrt1.o를 첨가형 프로그램을 컴파일한다. 이 때 다른 기본 라이브러리들도 동적으로 링크된다. 프로그램의 시작 주소는 _start의 주소로 설정된다. 2. 커널은 실행 파일을 읽어들여 /text/data/bss/stack을 생성한다. 이 때 매개변수와 환경변수를 위한 페이지를 할당하고 필요한 정보는 스택에 push 한다. 3. _start가 실행된다. _start는 스택에서 커널이 집어넣은 정보를 얻고 __libc_start_main을 위한 매개변수 스택을 만든 후 _start를 부른다. 4. __libc_start_main은 malloc과..

OS/Linux 2012.01.18

euid, uid

euid : 유효사용자 ID. 명령어 실행시 실제 어떤 사용자 권환으로 실행되는가. 커널은 프로세스마다 네가지 번호 부여. 실제uid(ruid), 유효uid(euid), 실제gid(rgid), 유효gid(egid) 실제(real) 번호들은 계정 관리를 위해 사용. 유효(Effective) 번호들은 접근 권한을 결정할 목적. 보통은 실제번호와 유효번호가 동일. 정상적이라면 프로세스는 자신에게 부여된 네가지 번호를 변경하지 못한다. 예외) 다른 프로그램 파일을 실행하고 싶은 프로세스는 exec 시스템 콜 가족 중의 하나를 호출. 이때 새로운 프로그램의 이미지를 담고 있는 파일의 setuid 나 setgid 허가 비트가 설정되어 있다면 프로그램의 euid와 egid는 실행되는 파일의 uid와 gid로 설정. ..

OS/Linux 2012.01.18
반응형