Che cosa è Clean Room Design?

Un design camera pulita è una particolare strategia in ingegneria informatica. Con un design camera pulita, i lavoratori possono "reverse engineering", un programma software in varie fasi procedurali, senza sapere come è stato originariamente costruito. Questo processo a ritroso è simile a smontare un motore o altro dispositivo meccanico complesso per capire come funziona, e come viene assemblato. I programmatori fanno da "decifrare" ogni passo di un processo di codice, e ottenere un quadro più chiaro di come è stato scritto in origine.

Un altro tipo di idea di programmazione chiamato "codice pulito," differisce in modo critico dalla strategia clean room. Codice pulito scritto è chiaro e conciso, con poco o nessun codice superfluo. Un disegno camera pulita, d'altra parte, è una tecnica per manipolare codice esistente. Il design della camera pulita è stata storicamente una scappatoia intorno leggi e l'accusa di violazione del copyright del prodotto sul copyright. Il design difesa stanza pulita può o non può essere efficace per aiutare una società di evitare la responsabilità per le spese che hanno copiato un qualche tipo di software o di un prodotto IT. Quando il caso di copyright si basa su un uso di "codice proprietario," una camera pulita di design difesa può essere utile.

"Muraglia cinese" è un termine spesso associato con il processo di costruzione camera pulita. Questo tipo di procedura non gestisce codice proprietario. Gli ingegneri che non hanno alcuna conoscenza di un prodotto potrebbero teoricamente ricrearlo utilizzando questa tecnica.

Nell'attuazione camera bianca Reverse engineering, i professionisti possono utilizzare uno strumento software chiamato "decompilatore." Il decompilatore è fondamentale per il processo di reverse engineering, a causa del modo in cui il codice del computer è compattato e ri-arrangiati per "fase di esecuzione." Molti programmi per computer sono scritti in linguaggi come MS Visual Basic o la "C Suite." Quando sono costruiti in "eseguibili", il codice a livello di lingua è semplificato in quello che viene chiamato codice macchina. Al suo livello più semplice, questo è riassunta in linguaggio binario, composto unicamente di una serie di uno e zero.

In molti casi, non è possibile decodificare codice macchina indietro nel codice di livello lingua originale. Quando è possibile fare questo, tuttavia, la strategia camera pulita è spesso una componente della tecnica che ingegneri utilizzano. Prendendo il codice indietro attraverso un processo inverso, la natura del codice originale può diventare evidenti.

Utilizzando la tecnica di camera bianca a volte diventa società in situazioni giuridiche complicate su ciò che costituisce diritti di proprietà intellettuale di prodotti software. La maggior parte dei professionisti del settore concordano sul fatto che questo tipo di situazione è meglio evitare, ma in alcuni casi, il reverse engineering può essere utile a un business o di impresa. Come l'avvento dei cambiamenti "engineering open source" quante persone guardano software, c'è più di una possibilità che le tecniche di camera bianca e reverse engineering possono diventare più utile come leggi severe sulla proprietà intellettuale possono essere snellite a causa del principio di codice open source , che postula l'idea che il codice dovrebbe essere condivisa, e non sorvegliato dai programmatori.