Java Sistem Bilgilerine Erisim / Netbeans GUI Sorunu

Başlatan mami96, 13 Nisan 2013 - 00:57:13

« önceki - sonraki »

0 Üyeler ve 4 Ziyaretçi konuyu incelemekte.

mami96

Merhaba arkadaslar. Sistem bilgilerine erisim hakkinda bi kac sorum olacakti.

RAM markasi ve Ekran karti markasina nasil ulasabilirim?

Sistem bilgilerine ulastiginizi varsayalim hangileri yazdirilabilir bu konuda bilgim yok yani.

Google'da da bu konu ile alakali pek bise yok stackoverflow guzel bi kaynak oldu ama zaten kendi yaptiklarimla hemen hemen ayni

Mesela benim su anki sistemimdeki ciktilari asagida vericem. Orada ram ve harddisk bilgileri yok onlari da bu konudan sonra ekleyecegim. Ama eksik birseyler varmis gibi. oracle ve sun dokumanlarina baktim hemen hemen benim bulduklarimin aynisini vermisler zaten.

Neler eklenebilir ve sistem cagrilari hangileridir acaba? Sistem bilgisi veren sistem cagrilari.

Tesekkurler

*********

CIKTILAR


Kullanici Adi: ali
Islemci Sayisi: 2 / Cift Cekirdek
Sistem Turu: x86 - 32 Bit
Islemci Markasi / Ureticisi : GenuineIntel
Bilgisayar Adi: ali-Bilgisayar
Isletim Sistemi Adi: Windows 7
Isletim Sistemi Versiyonu: 6.1
Bilgisayar Seri Numarasi: ******
Bilgisayar Urecisi: ARCELIK A.S.
Bilgisayar Modeli: ****


*******

Netbeans IDE ile bi sorunum var. Indirip kurdum. 7.1 surumu var su an. JFrame ekledigim zaman "Loading..." yazisi geliyor ve gitmiyor. Bunun bug oldugu belirtilmis, ancak nasil cozulecegi konusunda bi detaya erisemedim. Bilgisi olan, yardim edebilecek arkadaslar var mi? Eclipse'i kurup zorlanmak istemiyorum. Onu belirteyim; Eclipse'de swing, awt vs. var ancak bi buton alsam butun panel'i kapliyo boyutlandiramiyorum mouse ile. fazlaca kod yazinca bu tip seyleri kolay yoldan halletmek istiyorum

sem


İstediğiniz bilgileri Java ile mi elde etmek istiyorsunuz yoksa BASH yardımı almayı düşünüyor muısunuz?


BASH ile ilgil olarak;





Sistem bilgileri için proc sistemini araştırabilirsiniz. Örneğin bellek (RAM) bilgisi için


cat /proc/meminfo


Bellek için free komutunu da kullanabilirsiniz. Çıktılar megabyte cinsinden almak için;


free -m


Ya da işlemci bilgisi için yine proc sistemine başvurabilirsiniz;


cat /proc/cpuinfo


Bilgiler buradan alınabilir ya da


lspci
istenen bilgiye göre grep aracı ile ayrıştırılabilir.
".NET çemberinden geçen lirisist etkisi bir 'Volcano', bir yüzüm Java bir yüzüm Badalamenti Don Tano"
----------------------------------------------------------------------------------------------------------------------
"Her yer ölüm yine, burası dünya
Derken ölüm bile bu nasıl dünya?
Benden ölüm dile, batıyor gün yine
Burası dünya?

mami96

Java ile almak istiyorum.

Belirttiginiz komutlari biliyorum ancak bunlar Windows icin calismiyor sanirim ya da o komutlari Windows'a tanitmali yazdigim program ama ortak bi bilgi kutuphanesi var mi kullanilan. Ortak Platform yapisi yani.

sem

".NET çemberinden geçen lirisist etkisi bir 'Volcano', bir yüzüm Java bir yüzüm Badalamenti Don Tano"
----------------------------------------------------------------------------------------------------------------------
"Her yer ölüm yine, burası dünya
Derken ölüm bile bu nasıl dünya?
Benden ölüm dile, batıyor gün yine
Burası dünya?

mami96

Alıntı yapılan: sem0900 - 14 Nisan 2013 - 00:06:22

Bağlantılar İngilizce ama kodlar bir fikir verecektir;

http://nadeausoftware.com/articles/2008/03/java_tip_how_get_cpu_and_user_time_benchmarking
http://www.roseindia.net/java/beginners/OSInformation.shtml

Hocam tesekkur ederim. Her iki linke de baktım. Birşey öğrendim; Java ile direkt olarak sistem bilgilerine erişilemezmiş. Bunun için farklı dillerde (C) ile yazılan kütüphane mesela Java'ya çağırılırsa eğer o kullanılabilirmiş.

if

@mami96, konuyu etiketleyebiliriz o zaman, değil mi?

mami96

Alıntı yapılan: if - 14 Nisan 2013 - 21:43:49
@mami96, konuyu etiketleyebiliriz o zaman, değil mi?

Hocam evet ancak bende degistir linki gorunmedigi icin birsey yapamadim. Geri donus bekledim. Tesekkurler. Cozuldu eklenebilir konu kapatilmazsa iyi olur diyecegim ileride sorun yasayanlar olursa falan. Ama tesekkur ederim tekrardan.

if

Konu hakkında gelişmeler olacaksa açık kalabilir.

ahmet_matematikci

#8
Pardon konuyu yanlış anlayıp cevap yazmışım.... :( :(
Ram kullanımı diyor sandım sonra dikkatli okuyunca marka -model istiyormuş.
Msjın içini boşaltmak istemedim.

Murat Inanın  Java Uygulamaları kitabının 2007 basımında şu şekilde bir örnek var ram değerini gösteren
Kodlar java 1.6 ile yazılmış.
Çıkan Html sayfasının altında ki değerlere tıklayınca anlık olarak değişiyor.




Bellek.html


<html><head><title>Bellek</title></head>
<body>
<applet code = "Bellek.class"
        archive = "Bellek.jar"
width = 450
height = 450 >
</applet>
</body>
</html>

import java.awt.*;
import java.awt.event.*;
import java.awt.font.*;
import java.awt.geom.*;
import javax.accessibility.Accessible;
import javax.swing.*;
import java.applet.Applet;

public class Bellek extends Applet {
   
   private MyComponent comp ;
   private BellekComp memcomp ;
   
   public void init(){
      setBackground(Color.white);
      setLayout(new  BorderLayout());
      comp = new MyComponent();
      add("Center" , comp);
      memcomp = new BellekComp();
      add("South" , memcomp);
   }
   
   //inner class
   class MyComponent extends Panel {
     
      public MyComponent(){
         super();
      }
     
      public Dimension getPreferredSize(){
         return new Dimension(450 , 400);
      }
     
      public void paint(Graphics g){
         super.paint(g);
         Graphics2D g2 = (Graphics2D)g;
         String s = "JAVA HAFIZA ARACI";
         Font f = new Font("Times New Roman Bold" , Font.BOLD , 40);
         FontRenderContext frc = new FontRenderContext(null , true , true);
         TextLayout tl = new TextLayout(s , f , frc);
         FontMetrics fm = getFontMetrics(f);
         int wd = fm.stringWidth(s);
         int w = getWidth() ;
         int h = getHeight() ;
         AffineTransform at = new AffineTransform();
         at.translate(w / 2 - wd / 2 , h / 2 + fm.getDescent());
         g2.transform(at);
         Shape sp = tl.getOutline(null);
         GradientPaint gp = new GradientPaint(w / 3 , h / 2 , Color.BLACK , w / 4 , h / 3 , Color.RED);
         g2.setPaint(gp);
         g2.fill(sp);
      }
     
   }
   //inner sonu
   
   //inner class
   class BellekComp extends Panel implements Runnable , Accessible , FocusListener {
     
      private Thread thread ;
      private Color color ;
      private float usm = 0 , fm = 0 ;
      private Runtime r = Runtime.getRuntime();
     
      public BellekComp(){
         super();
         setFocusable(true);
         addFocusListener(this);
         addMouseListener(new MouseAdapter(){
               public void mouseClicked(MouseEvent evt){
                  if(thread == null) start() ; else stop();
               }
         } ) ;
         color = Color.BLUE ;
      }
     
      public void focusLost(FocusEvent fe){}
     
      public void focusGained(FocusEvent fe){}
     
      public Dimension getPreferredSize(){
         return new Dimension(450 , 50);
      }
     
      public int getHeight(){
         return this.getPreferredSize().height ;
      }
     
     
      public void start(){
         if(thread == null){
            thread = new Thread(this);
            thread.setPriority(Thread.MIN_PRIORITY);
            thread.setName("x");
            thread.start();
         }
      }
     
      public synchronized void stop(){
         if(thread != null){
            thread.interrupt();
         }
         notify();
         thread = null ;
      }
     
      public void run(){
         Thread me = Thread.currentThread();
         while(thread == me){
            float totalMem = (float)(r.totalMemory() / 1024) ;
            float freeMem = (float)(r.freeMemory() / 1024) ;
            float usedMem = totalMem - freeMem ;
            usm = usedMem ;
            fm = freeMem ;
            this.repaint();
            try{
               thread.sleep(200);
               } catch(InterruptedException e){
               break ;
            }
         }
         thread = null ;
      }
     
      public void paint(Graphics g){
         super.paint(g);
         g.setColor(Color.BLACK);
         g.drawRect(0 , 0 , getSize().width , this.getHeight());
         g.setFont(new Font("Serif" , Font.BOLD , 14));
         g.setColor(color);
         g.drawString("Kullan\u0131lan bellek :  " + Float.toString(usm) + " K " , 10 , 22);
         g.drawString("Bo\u015F bellek : " + Float.toString(fm) + " K " , 250 , 22);
      }
     
   }
   //inner sonu
   
   public void paint(Graphics g){
   }
   
   public static void main(String[] args){
      try{
         JFrame fr = new JFrame();
         fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
         Applet a = new Bellek();
         a.init();
         fr.getContentPane().add("Center" , a);
         fr.setSize(450 , 450);
         fr.setVisible(true);
         } catch(Throwable t){
         System.err.println(t.getMessage());
         System.exit(0);
      }
   }
   
}
♥ Kız tavlamak için kahraman olmak gerekmez. Doğru kadın zaten sizi kahraman yapar ;)