재미로 하는 찬의아빠의 일상,리뷰 블로그
TODAY TOTAL
12-21 21:25
반응형
전체 글 (79)
[일상][팁공유] 하드디스크 성능 검사 3종 세트 소개합니다~ (1탄)
반응형

요즘들어 포스팅 소재가 약간 고갈 되어서

 

힘든 시간들을 보내고 있습니다.

 

딱히 맛집을 가는것도 아니고, 

 

그렇다고 뭐 좋은것을 사는것도 아니었기 떄문에

 

그닥 포스팅 할만한 욕구도 생기지 않고 있었더랬죠..


오늘도 어김없이 포스팅 없이 지나가는건가 했는데,

 

주변에서 누가 버린다는 HDD 를 주워와서

 

PC 에 연결해서 사용해볼 겸 집에 가져와서

 

이것저것 테스트를 해보았습니다^^

오랜만에 SATA to USB 를 꺼내어 연결해 보았습니다.

 


오늘은 하드디스크(HDD) 또는 SSD 의

 

성능 및 상태를 점검하는데 사용할 수 있는 3가지 멋진 툴들을 소개해 드리겠습니다!!

 

 

 

하드 디스크 상태를 보고 싶을 때?

 

하드디스크가 건강한지 건강하지 않은지를 

 

점검하고 싶을 떄가 있다. 이럴 때는

 

"CrystalDiskInfo" 를 이용하면 된다.

 

Google 에 "CrystalDiskInfo" 를 입력해서 첫번째 나오는 사이트에서 다운르도 해도 되고,

 

썸네일이 애니사이트 같다...

 

아래의 첨부를 받아 설치해도 된다.

CrystalDiskInfo9_3_2.exe
5.65MB

 

받아서 설치하고 실행까지 해보면

 

아래와 같은 화면을 볼 수 있는데요,

 

87000시간....

 

왼쪽 상단에는 디스크의 건강 상태와 온도를 한눈에 볼 수 있고,

 

중앙 상단에는 보통 S.M.A.R.T 라고 하는 디스크 정보를 볼 수 있다.

 

내가 가지고 온 하드디스크는 무려 87493 시간이라는 

 

엄청난 사용시간을 확인할 수 있었다. ㄷㄷㄷ (버릴까...)

 

하단 테이블에는 각종 정보들이 있는데, 이중에서 중요한 정보는 

 

ID 05 재할당된 섹터 수 이며

 

이 항목의 원시값이 1 이상이면 배드섹터가 발생한 것이므로

 

다른 디스크로 옮길 준비를 하는것이 좋겠습니다.(출처 : 나무위키)

 


 

글을 한번에 쓰고 싶었는데 

 

지금 시간도 늦었고(새벽 1시),

 

글이 길어지는 것을 감안하여

 

2탄 - CrystalDiskMark, 

3탄 - GM HDD Scan

으로 찾아뵙겠습니다. 

 

긴글 읽어주셔서 감사드리며,

 

이상 포스팅 마치겠습니다~!!

 

Good Luck!! 감사합니다.

 

※ 본 포스팅은 지극히 주관적인 경험과 주관적인 생각으로 작성된 내용입니다.

※ 일부 내용은 출처를 밝혔습니다.

반응형
  Comments,     Trackbacks
[내돈내산][리뷰] 아이폰 13 프로 맥세이프 케이스 구매해 보았습니다~
반응형

오랜만에 내돈내산 구매 인증합니다^^

아이폰 13프로는 제가 이전에 사용하던 폰인데

와이프가 케이스도 안 바꾸고 쓰고 있길래

예쁜 케이스를 선물해 주었습니다.

(사실은 특가 텔레그램에서 보고 충동구매 했습니다^^;;)


💖 구매처 : 11번가
💖 가격 : 7,900(배송비 포함)
💖 적용 모델 : 아이폰 13 프로 (색상: 시에라블루)
💖 옵션 : 오로라

내돈내산

바로 사진부터 보겠습니다~

안쪽
바깥쪽
모서리 쿠션
하단 쿠션 및 충전/스피커 홀


아래가 이제 원래 쓰던 폰케이스인데요

누리끼리 변색이 되어서 제거도 아닌데

그걸 그냥 쓰고 있는 와이프가 안쓰럽더라고요
(바보 멍충이 똥깨 말미잘 오징어…)

원래 쓰던 폰 케이스(누리끼리 변색된 모습)

그리고 기존 폰케이스는 맥세이프도 없어서 여러모로 불편하더라고요… (내 생각^^)🤭

케이스 씌운 모습

케이스 씌우고 나니 오로라빛 영롱한 모습에

제가 다시 쓰고 싶더라고요.


잘 때 바꿔줘서 와이프 반응을 보진 못했는데

와이프가 좋아해 주었으면 좋겠네요~



아래는 제품링크 남기니 참고하시면 되겠습니다~^^

http://www.11st.co.kr/products/6993298571/share

[11번가] 클로버나인 갤럭시 플립 폴드 6 아이폰15 14 13 12 11 X XS XR 8 7 SE2 SE3 프로 맥스 플러스 미니

카테고리: 고속/급속케이블, 가격 : 3,990원

www.11st.co.kr


이상 내돈내산 포스팅을 마치겠습니다~


↘️↘️↘️ 💖 여기는 광고 자리~


반응형
  Comments,     Trackbacks
[부여맛집] 부여 시골 통닭
반응형

저~~~엉말 오랜만에 포스팅을 하는것 같습니다.

못해도 1년은 넘지 않았을까 하는데 잘은 모르겠네요.

 

업무랑 육아에 지쳐서 하려고 했던것들을 못하고 있었는데 오랜만에 아침에 포스팅 남깁니다.^^


와이프 외가가 부여라 가끔씩 심심할때(?) 마다 부여에 놀러가곤 하는데요

 

부여에 가면 도착하자마자 꼭 들르는데가 있습니다. 

 

바로 부여 시골 통닭

 

와이프가 가장 중요하게 생각하는것이

...

식당의 명성도 아니고❌

규모도 아니고

청결도 아니고

친절함도 아니고

맛도 아니고(이건 왜 아닌지 모르겠음)

 

바로바로

원산지 랍니다. ✅ (원산지가 좋으면 맛도 좋게 느껴진다라나..🤔)

 

어쨋거나 치킨집 중에 하림 닭 안쓰는곳 보기 힘든것처럼

 

여기또한 국내산 닭을 재료로 하고 있는 

이름 그대로 옛날 통닭 집입니다.

 

 

 

골목이 좁아서 주차는 바로 앞에는 조금 힘들고

그 주변 골목에 주차하시면 될것 같습니다.

사실 작년 4월 사진인데 이제야 포스팅...

 

기본 통닭을 시키면 이렇게 파가 얹어져서 나오는데

파랑 같이 먹으면 또 끝내줍니다.

 

음식을 기다리는 우리 아가

(입술이 왜 메말라 있니.. ㅠㅋㅋ 거의 방금까지 농사짓다 온 얼굴인데 ㅋㅋㅋ)

전체 구성입니다.

 

사실 작년에 갔다온걸 이제 포스팅 하는건데

맛 말고는 거의 기억이 잘 안나서 동영상으로 대체하겠습니다^^;;

 

부여에서 맛집을 찾으신다면

한번쯤 방문해 보셔도 좋을 것 같습니다!!

이상 맛있는 포스팅 마치겠습니다!!

반응형
  Comments,     Trackbacks
[python3 & 2] 쓰레드 thread 에서 반환값 return value 얻는 방법은?
반응형

thread는 프로그램에 여러 로직 간에 동시성을 갖게 해주는 아주 중요한 요소입니다.

 

보통의 프로그램은 하나의 로직으로만 수행되지 않고 여러 로직이 동시적으로 수행되어 지게 됩니다.

 

오늘 포스팅에서는 쓰레드 thread 에서 반환값 return value 를 얻는 방법에 대하여 포스팅 하려고 합니다.


방법1.  전역번수 사용

일반적으로 쓰레드를 시작하게 되면 반환값은 없이 해당 쓰레드는 로직을 마치면 자동으로 종료되게 됩니다.

그 전에 원하는 값을 공통으로 접근 할 수 있는 변수에 저장할 수 있다면 반환값이 있는 함수처럼 사용할 수 있게 됩니다.

 

from threading import Lock
from threading import Thread

#전역변수
data_list = []
lock_for_data_list = Lock()

def some_fuction():
	#전역변수를 함수 내에서 사용하기 위하여 내부 선언
	global data_list
	data = None
    
	#some logic...
    
	#다른 쓰레드에서 접근을 막기 위한 lock
	lock_for_data_list.acquire()
	data_list.append(data)
	lock_for_data_list.release()
    
def main():
	global data_list
    
	t = Thread(target=some_function)
	t.start()
    
	t.join()
	print(data_list)
    
	return
    
if __name__ == '__main__':
	main()

위 코드에는 세가지 중요한 지점이 있습니다.

첫번째는 정보를 공유할 전역 변수 입니다. 함수 바깥쪽에 사용할 변수를 선언한 뒤, 사용할 함수 안에서 global 키워드와 함께 내부 선언을 해주시면 사용할 준비가 되게 됩니다.

 

두번째는 전역변수 공유 시, dead lock 등 오류를 발생을 방지하기 위한 Lock 입니다. 동시에 같은 데이터에 접근하게 될 경우, 프로그램에 치명적인 오류가 발생하거나 데이터가 부정확해지는 일이 발생할 수 있으므로, 한번에 한 쓰레드에서만 접근할 수 있도록 Lock() 을 사용하여 구역을 묶어 두는것이 일반적입니다.

 

세번째는 쓰레드 Thread 종료 시까지 기다릴 수 있도록 하는 join() 입니다. join() 사용 시, 해당 쓰레드의 함수가 종료될 때까지 기다리게됩니다. 

 

위 세가지 내용이 모두 위의 코드에 쓰였으니 참고 하시면 좋겠습니다.

 

방법2. Thread 클래스를 상속받아 값을 반환하는 클래스

간단하게 코드부터 소개하고 사용법을 공유하겠습니다.(python3)

from threading import Thread

class ThreadWithReturnValue(Thread):
    
    def __init__(self, group=None, target=None, name=None,
                 args=(), kwargs={}, Verbose=None):
        Thread.__init__(self, group, target, name, args, kwargs)
        self._return = None

    def run(self):
        if self._target is not None:
            self._return = self._target(*self._args,
                                                **self._kwargs)
    def join(self, *args):
        Thread.join(self, *args)
        return self._return

위에 작성된 ThreadWithReturnValue 클래스는 Thread 클래스를 상속받아 init 과 run, join 함수를 재정의 하였습니다. (출처 :

class ThreadWithReturnValue(Thread):
    def __init__(self, group=None, target=None, name=None,
                 args=(), kwargs={}, Verbose=None):
        Thread.__init__(self, group, target, name, args, kwargs, Verbose)
        self._return = None
    def run(self):
        if self._Thread__target is not None:
            self._return = self._Thread__target(*self._Thread__args,
                                                **self._Thread__kwargs)
    def join(self):
        Thread.join(self)
        return self._return

 

사용방법은 일반적인 thread 의 사용법과 모두 동일하지만 join 에 반환값이 발생하게 된다.

def foo(bar):
    print 'hello {0}'.format(bar)
    return "foo"

twrv = ThreadWithReturnValue(target=foo, args=('world!',))

twrv.start()
print twrv.join()   # prints foo

위 소개한 두가지 방법을 개념만 잘 잡고 있다면 thread 를 사용하는 것이 어렵지 않게 될 것입니다.

 

더 좋은 방법이 있다면 소개해 주시면 감사드리겠습니다^^

 

이상 포스팅 마치겠습니다.

 

찾아와 주신 모든 분들께 감사드립니다(_ _)

반응형
  Comments,     Trackbacks
[python3] 경과시간 확인 방법 & 잡설...
반응형

프로그래밍을 하다보면 로직이 얼마나 오랜 시간이 걸렸는지 또한 중요한 요인이 된다.

 

cpu 자원과 사용자의 인내력이 무한대라면 좋겠지만 그렇지 않기 때문에 무심코 지나칠 수 없기도 하다.


원래는 c# 개발자이나 이제 1년간의 달콤한 휴직기간 또한 끝나가던 차에 

hello world 프린트 하는 것도 잊어 버릴것 같아 사이드 프로젝트로 파이썬을 이용해서 크롤링 crawling 을 해보고 있었습니다.

 

python 을 처음 해봤는데 언어 자체는 간단명료하고 사용자 친화적이란 느낌을 많이 받았습니다.

ide 는 vs code 를 사용해서 그런지 visual studio 를 사용하던 기억이 있어 디버깅은 아직 익숙치가 않습니다.

 

크롤링 crawling 을 처음 해보면서 python 에는 강력한 외부 라이브러리들이 참 많다는 생각이 들었습니다.

selenium, beautifulsoup, openpyxl 등 사용하기 너무 편리한 라이브러리들이 너무 손쉽게 사용될 수 있었습니다.(라이선스는..?)

 

결론적으로는 원하는 데이터를 잘 획득할 수 있었고 그 과정에서 알게된 내용들을 잘 정리해서 공유 하고자 합니다.


경과 시간 확인 방법

time 모듈을 import 한 후, time() 함수를 이용하여 양 return 값 사이의 차를 출력하면 손쉽게 경과시간(단위: 초)을 얻을 수 있습니다.

from time import time

start = time()
#some function...
end = time()

print('총 ' + str(end - start) + '초 소요')

결과값↘️

뭔데 442초나 걸렸는지는 나중에도 설명하겠지만 대략 16배정도 시간 단축 시킨것 같습니다.

노트북에서 이정도지 데스크탑에서 실행했으면 더 줄일 수 있을 것 같습니다.^^;;


이만 간단 포스팅 마치겠습니다.

찾아오신 모든 분들꼐 감사드립니다.

반응형
  Comments,     Trackbacks
2023년도 LH, SH 공공주택 차량가액 기준
반응형

3년째 공공임대 주택에 거주하면서 가장 중요하게 점검 하고 있는 항목이 바로 

차량가액 기준에 맞는 자동차를 구매하는 일이었습니다.

 

아직도 중고 자동차 구매는 미뤄지고만 있는데요.

올해 초부터 제 블로그에 방문해 주시는 분들께서 많이 검색해 주시고 계신 키워드는 바로

"2023년도 차량 가액 기준"

이었습니다.

 

원래 LH 담당자에게 문의 해서 알고 있던 바로는 4월에 갱신이 된다고 들었으나,

오늘 신규 임대주택 모집공고가 있는지 확인하기 위해 

LH 홈페이지에서  들어가보고 확인한 결과

 

2023년도 차량 가액 기준은 3,683만원 입니다.

이로서 작년 2022년 3557 만원에서 126만원 오르게 되었습니다.

 

차량 가액 기준이 오른 만큼 차량 선택 기준이 조금은 변하게 되어

기쁜 마음을 감출수가 없습니다.^^

 

LH 공고문 추가로 올려드리니 추가 내용 확인 필요하신 분들은 확인하시면 되겠습니다.

[공고문]2023년신혼부부전세임대Ⅱ입주자수시모집_정정공고.pdf
0.66MB

 

이만 간단 포스팅 마치겠습니다^^

 

반응형
  Comments,     Trackbacks