Mikroçipler ortamdaki enerjiden etkilenirler mi?

Bu yazımda daha önce bazı hocalarımdan duyduğum ve araştırarak -kısmen de olsa- kafamdaki soru işaretlerini giderdiğim bir konudan bahsedeceğim.

Bildiğiniz üzere günümüz mikroçiplerinin işlem yapan, sonuç üreten kısımları transistörlerdir. Günümüzde transistörlerin çoğu silikon(Si) elementinden yapılıyor. Bu element ısıya gayet duyarlı olsa da yeryüzünde en çok bulunan elementlerden biri olduğu için, dolayısıyla çok ucuz olduğu için transistör->mikroçip üretiminde kullanılıyor.

Peki bunlardan bahsetmemin sebebi ne? Çünkü başlıktaki soruya cevap verebilmemiz için mikroçiplerin oluştuğu maddeleri ve atom/bağ yapılarını bilmemiz gerek.

.

Öncelikle silikon(Si) elementinin atomları birbirleriyle kovalent bağ yaparlar. Kovalent bağ, atomlar arasında güçlü bir bağ olsa da atomların değerlik elektronları yine de dış kaynaklardan gelen kinetik enerjiyi çeker ve kovalent bağı kırılır. Bunun sonucunda kovalent bağı kırılan elektronlar free(serbest) duruma geçerler.

Serbest durumdaki bu elektronlar, voltaj kaynakları ya da potansiyel farklar sonucu oluşan elektriksel alanlara(electric fields) son derece duyarlı hale gelirler. Hatta foton enerjileri ve ısı da bu elektronları etkileyebilir.

Kaynak:

Electronic Devices and Circuit Theory – Robert L. Boylestad & Louis Nashelsky [11th Edition]

Ubuntu’da bootable Windows Usb Oluşturmak

Şayet zaman zaman sistem değiştirmeniz gerekiyorsa ve evde ikinci bir bilgisayarınız yoksa siz de benim gibi bu durumla sık sık karşılaşıyorsunuzdur. Her defasında çeşitli denemelerim olmuştur ve hep başarısız olmuştur( Linux ortamındaki usb writer araçlarıyla denemeler, virtualbox’ta windows sanal makinesi denemeler vs.)

Bugün yine aynı şeye ihtiyacım oldu ve winusb yazılımını linux ortamında çalıştırarak sorunu hallettim. ( Bu yazıyı yazdığım sıralar sorun yoktu ancak yazma işlemi başarılı olmasına rağmen o usb’yi kullanarak önyükleme işlemini gerçekleştiremedim. Sorun ISO’dan kaynaklı olabilir, yazıyı şimdilik kaldırmıyorum belki işinize yarar. Deneyenler sonucu paylaşırlarsa sevinirim.)

Ubuntu 12.04, Ubuntu 12.10, 13.04, 13.10 sürümleri için,

sudo add-apt-repository ppa:colingille/freshlight
sudo apt-get update
sudo apt-get install winusb


Ubuntu 14.04 için,


sudo add-apt-repository ppa:colingille/freshlight
sudo sh -c "sed -i 's/trusty/saucy/g' /etc/apt/sources.list.d/colingille-freshlight-trusty.list"
sudo apt-get update
sudo apt-get install winusb

Android Studio 1.0 – Unable to access sdk Hatası ve Çözümü -Linux/Ubuntu-

Yaklaşık 1 hafta önce Google, Android Studio 1.0’ı yayınladı ve bilgisayarıma kurdum. Ancak windows’ta her ne hikmetse emulator’üm yavaş çalışıyordu. Ubuntu’da denediğimde ise “Unable to access sdk” hatası alıyordum ve Android Studio daha tam açılmadan kapanıyordu. Biraz araştırma yaparak sorunun kaynağını ve çözümünü buldum.
Öncelikle sorunun sebebi Android Debug Bridge (adb)’in ve bazı sdk tool’ların 32 bit kütüphanelerini kullanması. Bu kütüphaneler de malesef 64 bit sistemde çalışmıyor ve Ubuntu 14.04 64-bit sisteminde de sağlanmıyor.
Sorunun çözümü ise basit; KÜTÜPHANELERİ YÜKLEMEK.

$ sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0

$ sudo apt-get install lib32stdc++6

Umarım yardımcı olur, kolay gelsin.

Java ile Text Dosyası Kopyalama İşlemi – Text’ten veri okuma, Text’e veri yazma

Kodların sağlıklı çalışması için okuyacağımız ve yazacağımız text dosyalarını workspace’e koymamız gerekir. Aslında bu dosyaları java kodları kullanarak kendimiz de oluşturabiliriz. Ama ben bu örnekte text1.txt ve text2.txt dosyalarını workspace’e kendim oluşturdum. Workspace: Proje dosyası

import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.util.Scanner;

public class Process {

public static void main(String[] args) {

Scanner scanFile=null; // dosyayı okumak için Scanner objesi
PrintWriter writer=null; // dosyaya yazmak için PrintWriter objesi
File file=new File("text1.txt"); // okunacak dosya File tipinde bir
// obje referansında tutuluyor

try {
scanFile=new Scanner(file); // olası bir exceptionu handle etmek için
// try-catch bloğu kullanıyoruz
} catch (FileNotFoundException e) {
System.out.println("File could not found - Dosya bulunamadı. ERROR: "+e);
// exception fırlatıldığında e ile yakalayıp gerekli mesajla birlikte basıyoruz.
}

try {
writer=new PrintWriter("text2.txt");
} catch (FileNotFoundException e) {
System.out.println("File could not created - Dosya oluşturulamadı(yazmak için). ERROR: "+e);
}

while(scanFile.hasNext()) // dosyayı scanFile referansı ile taramaya başlıyoruz
{ // hasNext'i olduğu sürece yani dosya sonuna kadar
writer.println(scanFile.nextLine()); // her okunan line(satır)'ı
} // aynen diğer dosyaya yazıyoruz

scanFile.close(); // scanFile objesini kapatalım
writer.close(); // writer objesini kapatalım.

System.out.println("The copy operation is completed. - Kopyalama işlemi tamamlandı.");
}

}

Aslında file tutan referansları, bazı sistemler otomatik kapatıyor. Ancak bazıları kapatmadığı için hem sistemi gereksiz yere kullanmış oluyoruz hem de dosyaya veri yazma işlemi başarısız olabiliyor. Mesela ubuntu sistemimde, buradaki writer objesini kapatmadığım zaman dosyayı hiçbirşey yazılmamış olarak buluyorum. Bu yüzden, özellikle file tutan referanslarımızı her proje sonunda mutlaka kapatmalıyız.

Ubuntu & Linux Mint’te Java 8’i Nasıl yüklerim?

Bildiğiniz üzere 18 Mart 2014’te Oracle Java 8’i yayınladı. Ancak bazen Oracle’ın sitesinde sunduğu .rpm ya da tar.gz uzantılı dosyalar ile kurulum yapmak sıkıntılı olabiliyor -özellikle deneyimsiz kullanıcılar için-.
Bu ilk blog deneyimimde, sizlere PPA ile basit bir şekilde, ubuntu ya da linux mint sisteminize Java 8’i nasıl kuracabileceğinizi anlatacağım.

1- ilk olarak webupd8team’in PPA depo(repository)’sunu sistemimize ekliyoruz.

$ sudo add-apt-repository ppa:webupd8team/java

2- Sistemimizi güncelliyoruz..

$ sudo apt-get update

3- Oracle Java 8’i yüklüyoruz.

$ sudo apt-get install oracle-java8-installer

Şimdi Java 8’in sistemimize yüklenip yüklenmediğini kontrol edelim

$ java -version

Bu komut bize şu şekilde bir output vermelidir.( Ubuntu’da denenmiştir )

java version "1.8.0_25"
Java(TM) SE Runtime Environment (build 1.8.0_25-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)

4 – Son adım olarak, yine Webupd8team’in bize sunduğu bir paket ile ortam değişkenlerinde Oracle Java 8’i default olarak ayarlıyoruz.

$ sudo apt-get install oracle-java8-set-default

bu kadar.. Kolay gelsin.