Chifukwa chiyani simuyenera kufuula pa HDD yanu

Chifukwa chiyani simuyenera kufuula pa HDD yanu

Pamsonkhano wachitetezo pakompyuta wa Ekoparty 2017 ku Buenos Aires, wowononga waku Argentina Alfredo Ortega adawonetsa chitukuko chosangalatsa kwambiri - kachitidwe kobisalira ma waya pamalo osagwiritsa ntchito maikolofoni. Phokoso olembedwa mwachindunji kwa chosungira!

HDD makamaka imatenga mawu otsika kwambiri, masitepe ndi kugwedezeka kwina. Zolankhula za anthu sizikudziwikabe, ngakhale asayansi akuchita kafukufuku mbali imeneyi (kuzindikira mawu ndi kugwedezeka kwafupipafupi, komwe kumalembedwa, mwachitsanzo, kuchokera ku gyroscope kapena HDD).

Phokoso ndi kugwedezeka kwa mpweya kapena sing'anga ina. Munthu amawazindikira kudzera m'nthiti ya m'makutu, yomwe imatumiza kugwedezeka mpaka mkati mwa khutu. Maikolofoni idapangidwa ngati khutu - apanso, kugwedezeka kumajambulidwa ndi nembanemba yopyapyala, yomwe imasangalatsa mphamvu yamagetsi. Ma hard drive, nawonso, amathanso kugwedezeka pang'ono chifukwa cha kusinthasintha kwa mpweya wozungulira. Izi zimadziwika ngakhale kuchokera kuukadaulo wa ma HDD: opanga nthawi zambiri amawonetsa kugwedezeka kwakukulu kovomerezeka, ndipo hard drive yokha nthawi zambiri imayesa kuyiyika mu chidebe chotsimikizira kugwedezeka chopangidwa ndi mphira kapena zinthu zina zotchingira. Kuchokera apa n'zosavuta kunena kuti phokoso likhoza kujambulidwa pogwiritsa ntchito HDD. Chotsalira ndikulingalira momwe.

Alfredo Ortega adapereka lingaliro lapadera la kuwukira kwapambali, kuukira kwanthawi. Kuukira kumeneku kumachokera ku lingaliro lakuti ntchito zosiyanasiyana zimachitidwa pa chipangizocho nthawi zosiyanasiyana, kutengera zomwe zaperekedwa. Pachifukwa ichi, "data yolowetsa" ndi kugwedezeka kwa mutu wowerengera ndi mbale ya HDD, yomwe imagwirizana ndi kugwedezeka kwa chilengedwe, ndiko kuti, ndi phokoso. Choncho, poyesa nthawi yowerengera ndi kuwerengera chiwerengero cha deta, kugwedezeka kwa mutu / mbale kotero kuti kugwedezeka kwa sing'anga kungayesedwe. Kuchedwerako powerenga deta, kumapangitsanso kugwedezeka kwa HDD ndipo, motero, kumamveka mokweza.

Kodi mungayese bwanji kugwedezeka kwa hard drive? Zosavuta kwambiri: ingoyendetsa kuyimba foni read () - ndikulemba nthawi yomwe imafunika kuti amalize. Machitidwe amakono ogwiritsira ntchito amakulolani kuti muwerenge nthawi ya mafoni a dongosolo ndi kulondola kwa nanosecond.

Kuthamanga kwa kuwerenga zambiri kuchokera ku gawo kumadalira malo a mutu ndi mbale, zomwe zimagwirizana ndi kugwedezeka kwa mlandu wa HDD. Ndizomwezo.

Kusanthula kwa ziwerengero kumachitika pogwiritsa ntchito chida chosavuta cha Kscope. Monga akunena, zonse zanzeru ndi zosavuta.

Chifukwa chiyani simuyenera kufuula pa HDD yanu
Kscope utility (stat() syscall)

Kscope ndi chida chaching'ono chowonera kusiyana kwakung'ono kwa nthawi yoyimbira mafoni. Gwerolofalitsidwa pa GitHub.

Mu malo osiyana HDD-nthawi pali mtundu wazomwe zimagwiritsidwa ntchito kuti ziwononge nthawi pa hard drive, ndiye kuti, zokonzedwa kuti zifufuze kuyimba kwadongosolo. read ().

Chiwonetsero chojambulira mawu pogwiritsa ntchito HDD, kugwiritsa ntchito chida cha Kscope


Zoonadi, kulankhula sikungamveke motere, koma HDD ndi yabwino kwambiri ngati sensor yogwedezeka. Mwachitsanzo, mutha kulembetsa ngati munthu wovala nsapato zolimba kapena wopanda nsapato adalowa m'chipinda chokhala ndi kompyuta (mwina, ngati wowukirayo atavala nsapato zofewa kapena pali kapeti wandiweyani pansi, HDD sichitha kulembetsa kugwedezeka - izi ndi zofunika kuzifufuza). Kompyutayo imatha kulembetsa magalasi osweka kapena zochitika zina zokhala ndi mawu amphamvu. Ndiko kuti, hard drive imatha kukhala ngati mtundu wamtundu wosaloleka wozindikira kulowererapo.

HDD wakupha

Mwa njira, njira yofananira ingagwiritsidwe ntchito kuletsa ma hard drive. Apa pokha sitichotsa oscillations ku HDD, koma m'malo mwake, timapanga ma oscillation omwe amadyetsedwa ku HDD. Ngati mumasewera mawu kuchokera kwa wokamba pafupipafupi omwe amagwirizana ndi ma frequency a HDD, makinawo amazimitsa chipangizocho posachedwa ndi cholakwika cha I / O (kernel ya Linux imazimitsa HDD pambuyo pa masekondi a 120). Ma hard drive okha amatha kuwonongeka kosasinthika.

Chifukwa chiyani simuyenera kufuula pa HDD yanu
Linux kernel inazimitsa hard drive pambuyo pa masekondi 120 akutulutsa mawu pafupipafupi kudzera pa speaker wa Edifier r19u USB speaker. Wokamba nkhani amayatsidwa pafupifupi kotala la mphamvu (yosakwana 100 mW) ndipo ili 20 cm kuchokera pa HDD, yolunjika patebulo kuti ipititse patsogolo kugwedezeka. Chimango kuchokera kanema ndi chiwonetsero cha HDD wakupha

Ndizodabwitsa kuti "zowukira" zoterezi pa HDD nthawi zina zimachitika mwangozi m'moyo watsiku ndi tsiku. Mwachitsanzo, mu September 2016, ING Bank data center inakakamizika kuyimitsa ntchito kwa maola 10 pambuyo pobowola moto. Ma hard drive ambiri alephera chifukwa cha phokoso lalikulu la mpweya wa inert womwe umatulutsidwa kuchokera ku masilinda pansi pa kuthamanga kwambiri. Phokoso linali lokwera kwambiri (kuposa 130 dB), koma simungathe kufuula pa hard drive - izi zimawonjezera kuchedwa kupeza HDD.

Chiwonetsero cha anthu akukuwa pa hard drive mu data center. Muyeso wa latency


Kuti apange phokoso lomveka, Alfredo Ortega analemba Python script yotchedwa HDd-wakupha (chiwonetsero chamavidiyo).

HDD killer script Ndizochepa kwambiri, kotero mutha kuzifalitsa zonse pano.

"""PyAudio hdd-killer: Generate sound and interfere with HDD """
"""Alfredo Ortega @ortegaalfredo"""
"""Usage: hdd-killer /dev/sdX"""
"""Where /dev/sdX is a spinning hard-disk drive"""
"""Turn the volume to the max for better results"""
"""Requires: pyaudio. Install with 'sudo pip install pyaudio' or 'sudo apt-get install python-pyaudio'"""

import pyaudio
import time
import sys
import math
import random

RATE=48000
FREQ=50

# validation. If a disk hasn't been specified, exit.
if len(sys.argv) < 2:
    print "hdd-killer: Attempt to interfere with a hard disk, using sound.nn" +
	  "The disk will be opened as read-only.n" + 
          "Warning: It might cause damage to HDD.n" +
          "Usage: %s /dev/sdX" % sys.argv[0]
    sys.exit(-1)

# instantiate PyAudio (1)
p = pyaudio.PyAudio()
x1=0
NEWFREQ=FREQ

# define audio synt callback (2)
def callback(in_data, frame_count, time_info, status):
    global x1,FREQ,NEWFREQ
    data=''
    sample=0
    for x in xrange(frame_count):
        oldsample=sample
        sample=chr(int(math.sin(x1*((2*math.pi)/(RATE/FREQ)))*127)+128)
        data = data+sample
        # continous frequency change
        if (NEWFREQ!=FREQ) and (sample==chr(128)) and (oldsample<sample) :
                FREQ=NEWFREQ
                x1=0
        x1+=1
    return (data, pyaudio.paContinue)

# open stream using callback (3)
stream = p.open(format=pyaudio.paUInt8,
                channels=1,
                rate=RATE,
                output=True,
                stream_callback=callback)

# start the stream (4)
stream.start_stream()

# wait for stream to finish (5)
while stream.is_active():
    timeprom=0
    c=file(sys.argv[1])
    for i in xrange(20):
        a=time.clock()
        c.seek(random.randint(0,1000000000),1) #attempt to bypass file buffer
        c.read(51200)
        b=time.clock()
        timeprom+=b-a
    c.close()
    timeprom/=20
    print("Frequency: %.2f Hz File Read prom: %f us" % (FREQ,timeprom*1000000))
    NEWFREQ+=0.5

# stop stream (6)
stream.stop_stream()
stream.close()

# close PyAudio (7)
p.terminate()

Source: www.habr.com

Kuwonjezera ndemanga