Loading ...
Sorry, an error occurred while loading the content.

Multiprocessamento

Expand Messages
  • Ricardo Coelho
    Boa noite pessoal, Estou interessado em estudar mais o desenvolvimento de aplicativos que possam ser processados por vários processadores, um amigo, me
    Message 1 of 8 , Nov 7, 2007
    • 0 Attachment
      Boa noite pessoal,

          Estou interessado em estudar mais o desenvolvimento de aplicativos que possam ser processados por vários processadores, um amigo, me recomendou estudar C,  pois o mesmo possui bibliotecas para tal tipo de aplicação.

          A minha pergunta é: Em java temos também esta possibilidade de se desenvolver um aplicativo capaz de ser processado por mais de um processador ao mesmo tempo ??

          Lembro que estou falando de um aplicativo que direcione a outros processadores determinadas tarefas e não em abrir threads, pois pelo que vi as threads são abertas dentro do processo da aplicação e são processadas pelo mesmo processador que processa a aplicação principal, ou seja, é processado em paralelo com a aplicaçao principal porém no mesmo processador.

          Se em java for possível vou estudar mais a respeito, senão, vou ver em C mesmo como funciona para conhecer mais sobre o assunto.

          Grato.

          Ricardo Coelho.


      Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento!
    • Diego Oliveira
      Ricardo, Em java as threads fazem a mesma coisa que as técnicas de processamento paralelo em C, sendo que em C você vi ter que lidar com semáforo, memoria
      Message 2 of 8 , Nov 8, 2007
      • 0 Attachment
        Ricardo,

        Em java as threads fazem a mesma coisa que as técnicas de processamento paralelo em C, sendo que em C você vi ter que lidar com semáforo, memoria mapeada, etc.

        Quando vc cria uma thread em java ela é realmente criada no contexto da aplicação, mas quando você manda iniciar ela começa realmente ocorrer em paralelo com a aplicação. A decisão de qual processador ela irá ocupar vai ficar a cargo do SO, ou seja, pode cair no mesmo processador que estiver tratando a aplicação mas essa é uma preocupação que você não deve ter agora.

        Particularmente já trabalhei com threads, forks e semáforos em C e não é a coisa mais trivial do mundo. Avalie se os requisitos do seu projeto necessitam das características que o C oferece (programação em baixo nível, flexibilidade total, etc). Acredite a manutenção de um código java de rotinas multiprocessadas é bem, bem, bem mais fácil que o equivalente em C.

        Espero ter ajudado.

        On Nov 7, 2007 10:44 PM, Ricardo Coelho <rcoelhorj@...> wrote:

        Boa noite pessoal,

            Estou interessado em estudar mais o desenvolvimento de aplicativos que possam ser processados por vários processadores, um amigo, me recomendou estudar C,  pois o mesmo possui bibliotecas para tal tipo de aplicação.

            A minha pergunta é: Em java temos também esta possibilidade de se desenvolver um aplicativo capaz de ser processado por mais de um processador ao mesmo tempo ??

            Lembro que estou falando de um aplicativo que direcione a outros processadores determinadas tarefas e não em abrir threads, pois pelo que vi as threads são abertas dentro do processo da aplicação e são processadas pelo mesmo processador que processa a aplicação principal, ou seja, é processado em paralelo com a aplicaçao principal porém no mesmo processador.

            Se em java for possível vou estudar mais a respeito, senão, vou ver em C mesmo como funciona para conhecer mais sobre o assunto.

            Grato.

            Ricardo Coelho.


        Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento!



        --
        Att.
        Diego de Oliveira
        diego@...
        www.diegooliveira.com
      • Fabio Ribeiro
        Caro Ricardo, Estamos falando de uma camada superior. O desenvolvimento desse tipo de software esta na camada de sistema operacional. Java é executado sob a
        Message 3 of 8 , Nov 8, 2007
        • 0 Attachment
          Caro Ricardo,

          Estamos falando de uma camada superior.
          O desenvolvimento desse tipo de software esta na camada de sistema
          operacional. Java é executado sob a camada do sistema operacional (
          JVM ) sendo assim, o Sistema operacional é que gerencia o acesso a
          processadores. Como a JVM esta uma camada acima, ela será atendida de
          forma transparente pelo SO.

          O Acesso direto ao processador, registradores internos, etc.. pode ser
          acessado através de programas em C. Pois este tipo de desenvolvimento
          permite chamadas de baixo nível. Esse tipo de desenvolvimento é
          específico e requer um conhecimento apurado da estrutura do sistema
          como um todo. Imagine a situação de 2 processadores rodando o mesmo
          software e não atendendo nenhuma outra solicitação do sistema.
          Provavelmente, haveria um travamento de algum outro software que
          permaneceu aguardando seu time-slice.

          Há de se ter em mente qual o objetivo do software em questão. Pois uma
          vez que se desenvolve especificamente para uma plataforma de hardware,
          perde-se tudo aquilo que são qualidades em Java : Portabilidade,
          independência de plataforma, etc...

          Espero ter ajudado.
          --
          Fabio Ribeiro
          <www.fabioribeiro.com.br>




          --- In riojug@yahoogroups.com, Ricardo Coelho <rcoelhorj@...> wrote:
          >
          > Boa noite pessoal,
          >
          > Estou interessado em estudar mais o desenvolvimento de
          aplicativos que possam ser processados por v�rios processadores, um
          amigo, me recomendou estudar C, pois o mesmo possui bibliotecas para
          tal tipo de aplica��o.
          >
          > A minha pergunta �: Em java temos tamb�m esta possibilidade de
          se desenvolver um aplicativo capaz de ser processado por mais de um
          processador ao mesmo tempo ??
          >
          > Lembro que estou falando de um aplicativo que direcione a outros
          processadores determinadas tarefas e n�o em abrir threads, pois pelo
          que vi as threads s�o abertas dentro do processo da aplica��o e s�o
          processadas pelo mesmo processador que processa a aplica��o principal,
          ou seja, � processado em paralelo com a aplica�ao principal por�m no
          mesmo processador.
          >
          > Se em java for poss�vel vou estudar mais a respeito, sen�o, vou
          ver em C mesmo como funciona para conhecer mais sobre o assunto.
          >
          > Grato.
          >
          > Ricardo Coelho.
          >
          >
          > ---------------------------------
          > Abra sua conta no Yahoo! Mail, o �nico sem limite de espa�o para
          armazenamento!
          >
        • Peter
          Ricardo, Existe v�rias formas de se desenvolver com processos em Java. Est�o descritas no site da Sun, com bastantes c�digos de exemplo. Veja em
          Message 4 of 8 , Nov 8, 2007
          • 0 Attachment
            Ricardo,

            Existe várias formas de se desenvolver com processos em Java. Estão descritas no site da Sun, com bastantes códigos de exemplo.
            Veja em http://java.sun.com/docs/books/tutorial/essential/concurrency/index.html

            Infelizmente, não há suporte de semáforos em subprocessos em Java. Como threads não são substitutos para processos, acho que temos um ponto contra Java e a favor de outras linguagens aqui, infelizmente.

            Abraço!

            Peter P. Lupo
            Undergraduating in Computer Science DCC/UFRJ
            Sun Certified Java Associate
            http://pplupo.googlepages.com/
            Cell. +55 (021) 81742487


            Fabio Ribeiro wrote:

            Caro Ricardo,

            Estamos falando de uma camada superior.
            O desenvolvimento desse tipo de software esta na camada de sistema
            operacional. Java é executado sob a camada do sistema operacional (
            JVM ) sendo assim, o Sistema operacional é que gerencia o acesso a
            processadores. Como a JVM esta uma camada acima, ela será atendida de
            forma transparente pelo SO.

            O Acesso direto ao processador, registradores internos, etc.. pode ser
            acessado através de programas em C. Pois este tipo de desenvolvimento
            permite chamadas de baixo nível. Esse tipo de desenvolvimento é
            específico e requer um conhecimento apurado da estrutura do sistema
            como um todo. Imagine a situação de 2 processadores rodando o mesmo
            software e não atendendo nenhuma outra solicitação do sistema.
            Provavelmente, haveria um travamento de algum outro software que
            permaneceu aguardando seu time-slice.

            Há de se ter em mente qual o objetivo do software em questão. Pois uma
            vez que se desenvolve especificamente para uma plataforma de hardware,
            perde-se tudo aquilo que são qualidades em Java : Portabilidade,
            independência de plataforma, etc...

            Espero ter ajudado.
            --
            Fabio Ribeiro
            <www.fabioribeiro. com.br>

            --- In riojug@yahoogroups. com, Ricardo Coelho <rcoelhorj@. ..> wrote:
            >
            > Boa noite pessoal,
            >
            > Estou interessado em estudar mais o desenvolvimento de
            aplicativos que possam ser processados por v�rios processadores, um
            amigo, me recomendou estudar C, pois o mesmo possui bibliotecas para
            tal tipo de aplica��o.
            >
            > A minha pergunta �: Em java temos tamb�m esta possibilidade de
            se desenvolver um aplicativo capaz de ser processado por mais de um
            processador ao mesmo tempo ??
            >
            > Lembro que estou falando de um aplicativo que direcione a outros
            processadores determinadas tarefas e n�o em abrir threads, pois pelo
            que vi as threads s�o abertas dentro do processo da aplica��o e s�o
            processadas pelo mesmo processador que processa a aplica��o principal,
            ou seja, � processado em paralelo com a aplica�ao principal por�m no
            mesmo processador.
            >
            > Se em java for poss�vel vou estudar mais a respeito, sen�o, vou
            ver em C mesmo como funciona para conhecer mais sobre o assunto.
            >
            > Grato.
            >
            > Ricardo Coelho.
            >
            >
            > ------------ --------- --------- ---
            > Abra sua conta no Yahoo! Mail, o �nico sem limite de espa�o para
            armazenamento!
            >

          • Diego Oliveira
            Peter, Somente para incrementar, os semáforos basicamente servem para controlar acesso concorrente, sinalização de finalização de processamento,
            Message 5 of 8 , Nov 8, 2007
            • 0 Attachment
              Peter,

              Somente para incrementar, os semáforos basicamente servem para controlar acesso concorrente, sinalização de finalização de processamento, read/write de endereços de memória e comunicação entre processos. Em java você tem o equivalente a isso com o synchronized, whait e notify. Eu acho que consigo conviver bem com isso, rsrs.


              On Nov 8, 2007 1:23 PM, Peter <peterplupo@...> wrote:

              Ricardo,

              Existe várias formas de se desenvolver com processos em Java. Estão descritas no site da Sun, com bastantes códigos de exemplo.
              Veja em http://java.sun.com/docs/books/tutorial/essential/concurrency/index.html

              Infelizmente, não há suporte de semáforos em subprocessos em Java. Como threads não são substitutos para processos, acho que temos um ponto contra Java e a favor de outras linguagens aqui, infelizmente.

              Abraço!

              Peter P. Lupo
              Undergraduating in Computer Science DCC/UFRJ
              Sun Certified Java Associate
              http://pplupo.googlepages.com/
              Cell. +55 (021) 81742487


              Fabio Ribeiro wrote:

              Caro Ricardo,

              Estamos falando de uma camada superior.
              O desenvolvimento desse tipo de software esta na camada de sistema
              operacional. Java é executado sob a camada do sistema operacional (
              JVM ) sendo assim, o Sistema operacional é que gerencia o acesso a
              processadores. Como a JVM esta uma camada acima, ela será atendida de

              forma transparente pelo SO.

              O Acesso direto ao processador, registradores internos, etc.. pode ser
              acessado através de programas em C. Pois este tipo de desenvolvimento
              permite chamadas de baixo nível. Esse tipo de desenvolvimento é
              específico e requer um conhecimento apurado da estrutura do sistema
              como um todo. Imagine a situação de 2 processadores rodando o mesmo
              software e não atendendo nenhuma outra solicitação do sistema.

              Provavelmente, haveria um travamento de algum outro software que
              permaneceu aguardando seu time-slice.

              Há de se ter em mente qual o objetivo do software em questão. Pois uma

              vez que se desenvolve especificamente para uma plataforma de hardware,
              perde-se tudo aquilo que são qualidades em Java : Portabilidade,
              independência de plataforma, etc...


              Espero ter ajudado.
              --
              Fabio Ribeiro
              <www.fabioribeiro.com.br>

              --- In riojug@yahoogroups.com, Ricardo Coelho <rcoelhorj@...> wrote:
              >
              > Boa noite pessoal,
              >
              > Estou interessado em estudar mais o desenvolvimento de
              aplicativos que possam ser processados por v�rios processadores, um

              amigo, me recomendou estudar C, pois o mesmo possui bibliotecas para
              tal tipo de aplica��o.
              >
              > A minha pergunta �: Em java temos tamb�m esta possibilidade de

              se desenvolver um aplicativo capaz de ser processado por mais de um
              processador ao mesmo tempo ??
              >
              > Lembro que estou falando de um aplicativo que direcione a outros
              processadores determinadas tarefas e n�o em abrir threads, pois pelo
              que vi as threads s�o abertas dentro do processo da aplica��o e s�o
              processadas pelo mesmo processador que processa a aplica��o principal,
              ou seja, � processado em paralelo com a aplica�ao principal por�m no
              mesmo processador.
              >
              > Se em java for poss�vel vou estudar mais a respeito, sen�o, vou

              ver em C mesmo como funciona para conhecer mais sobre o assunto.
              >
              > Grato.
              >
              > Ricardo Coelho.
              >
              >
              > ---------------------------------
              > Abra sua conta no Yahoo! Mail, o �nico sem limite de espa�o para
              armazenamento!
              >




              --
              Att.
              Diego de Oliveira
              diego@...
              www.diegooliveira.com
            • André Pinto
              S� um pequeno complemento Ricardo, Caso o processo possa ser dividido em n�s de processamento diferentes, talvez uma solu��o distribu�da
              Message 6 of 8 , Nov 8, 2007
              • 0 Attachment
                Só um pequeno complemento Ricardo,

                Caso o processo possa ser dividido em "nós" de processamento diferentes, talvez uma solução distribuída ( RMI) atenda à necessidade.

                abs,
                André Pinto
                http://flagranti.blogspot.com/

                Em 08/11/07, Peter <peterplupo@...> escreveu:

                Ricardo,

                Existe várias formas de se desenvolver com processos em Java. Estão descritas no site da Sun, com bastantes códigos de exemplo.
                Veja em http://java.sun.com/docs/books/tutorial/essential/concurrency/index.html

                Infelizmente, não há suporte de semáforos em subprocessos em Java. Como threads não são substitutos para processos, acho que temos um ponto contra Java e a favor de outras linguagens aqui, infelizmente.

                Abraço!

                Peter P. Lupo
                Undergraduating in Computer Science DCC/UFRJ
                Sun Certified Java Associate
                http://pplupo.googlepages.com/
                Cell. +55 (021) 81742487


                Fabio Ribeiro wrote:

                Caro Ricardo,

                Estamos falando de uma camada superior.
                O desenvolvimento desse tipo de software esta na camada de sistema
                operacional. Java é executado sob a camada do sistema operacional (
                JVM ) sendo assim, o Sistema operacional é que gerencia o acesso a
                processadores. Como a JVM esta uma camada acima, ela será atendida de
                forma transparente pelo SO.

                O Acesso direto ao processador, registradores internos, etc.. pode ser
                acessado através de programas em C. Pois este tipo de desenvolvimento
                permite chamadas de baixo nível. Esse tipo de desenvolvimento é
                específico e requer um conhecimento apurado da estrutura do sistema
                como um todo. Imagine a situação de 2 processadores rodando o mesmo
                software e não atendendo nenhuma outra solicitação do sistema.
                Provavelmente, haveria um travamento de algum outro software que
                permaneceu aguardando seu time-slice.

                Há de se ter em mente qual o objetivo do software em questão. Pois uma
                vez que se desenvolve especificamente para uma plataforma de hardware,
                perde-se tudo aquilo que são qualidades em Java : Portabilidade,
                independência de plataforma, etc...

                Espero ter ajudado.
                --
                Fabio Ribeiro
                <www.fabioribeiro.com.br>

                --- In riojug@yahoogroups.com, Ricardo Coelho <rcoelhorj@...> wrote:
                >
                > Boa noite pessoal,
                >
                > Estou interessado em estudar mais o desenvolvimento de
                aplicativos que possam ser processados por v�rios processadores, um
                amigo, me recomendou estudar C, pois o mesmo possui bibliotecas para
                tal tipo de aplica��o.
                >
                > A minha pergunta �: Em java temos tamb�m esta possibilidade de
                se desenvolver um aplicativo capaz de ser processado por mais de um
                processador ao mesmo tempo ??
                >
                > Lembro que estou falando de um aplicativo que direcione a outros
                processadores determinadas tarefas e n�o em abrir threads, pois pelo
                que vi as threads s�o abertas dentro do processo da aplica��o e s�o
                processadas pelo mesmo processador que processa a aplica��o principal,
                ou seja, � processado em paralelo com a aplica�ao principal por�m no
                mesmo processador.
                >
                > Se em java for poss�vel vou estudar mais a respeito, sen�o, vou
                ver em C mesmo como funciona para conhecer mais sobre o assunto.
                >
                > Grato.
                >
                > Ricardo Coelho.
                >
                >
                > ---------------------------------
                > Abra sua conta no Yahoo! Mail, o �nico sem limite de espa�o para
                armazenamento!
                >


              • Ricardo Coelho
                Valeu pessoal... suas opniões foram bem importantes... Eu ainda não tenho esta necessidade real em um projeto, mas me bateu esta curiosidade devido a
                Message 7 of 8 , Nov 9, 2007
                • 0 Attachment
                  Valeu pessoal... suas opniões foram bem importantes... Eu ainda não tenho esta necessidade real em um projeto, mas me bateu esta curiosidade devido a carência que vejo no mercado.
                       Quanto as threads vou tentar no linux, pois o windows abre ela no mesmo processo, etou crendo que seja uma limitação do mesmo.
                        E vou dar uma pesquisada no RMI também para me interar mais no assunto.


                       Mais uma vez obrigado pessoal.

                       Abraço.
                       Ricardo Coelho.

                  André Pinto <andrepinto@...> escreveu:
                  Só um pequeno complemento Ricardo,

                  Caso o processo possa ser dividido em "nós" de processamento diferentes, talvez uma solução distribuída ( RMI) atenda à necessidade.

                  abs,
                  André Pinto
                  http://flagranti. blogspot. com/

                  Em 08/11/07, Peter <peterplupo@gmail. com> escreveu:
                  Ricardo,

                  Existe várias formas de se desenvolver com processos em Java. Estão descritas no site da Sun, com bastantes códigos de exemplo.
                  Veja em http://java. sun.com/docs/ books/tutorial/ essential/ concurrency/ index.html

                  Infelizmente, não há suporte de semáforos em subprocessos em Java. Como threads não são substitutos para processos, acho que temos um ponto contra Java e a favor de outras linguagens aqui, infelizmente.

                  Abraço!

                  Peter P. Lupo
                  Undergraduating in Computer Science DCC/UFRJ
                  Sun Certified Java Associate
                  http://pplupo. googlepages. com/
                  Cell. +55 (021) 81742487


                  Fabio Ribeiro wrote:
                  Caro Ricardo,

                  Estamos falando de uma camada superior.
                  O desenvolvimento desse tipo de software esta na camada de sistema
                  operacional. Java é executado sob a camada do sistema operacional (
                  JVM ) sendo assim, o Sistema operacional é que gerencia o acesso a
                  processadores. Como a JVM esta uma camada acima, ela será atendida de
                  forma transparente pelo SO.

                  O Acesso direto ao processador, registradores internos, etc.. pode ser
                  acessado através de programas em C. Pois este tipo de desenvolvimento
                  permite chamadas de baixo nível. Esse tipo de desenvolvimento é
                  específico e requer um conhecimento apurado da estrutura do sistema
                  como um todo. Imagine a situação de 2 processadores rodando o mesmo
                  software e não atendendo nenhuma outra solicitação do sistema.
                  Provavelmente, haveria um travamento de algum outro software que
                  permaneceu aguardando seu time-slice.

                  Há de se ter em mente qual o objetivo do software em questão. Pois uma
                  vez que se desenvolve especificamente para uma plataforma de hardware,
                  perde-se tudo aquilo que são qualidades em Java : Portabilidade,
                  independência de plataforma, etc...

                  Espero ter ajudado.
                  --
                  Fabio Ribeiro
                  <www.fabioribeiro.com.br>

                  --- In riojug@yahoogroups. com, Ricardo Coelho <rcoelhorj@.. .> wrote:
                  >
                  > Boa noite pessoal,
                  >
                  > Estou interessado em estudar mais o desenvolvimento de
                  aplicativos que possam ser processados por v�rios processadores, um
                  amigo, me recomendou estudar C, pois o mesmo possui bibliotecas para
                  tal tipo de aplica��o.
                  >
                  > A minha pergunta �: Em java temos tamb�m esta possibilidade de
                  se desenvolver um aplicativo capaz de ser processado por mais de um
                  processador ao mesmo tempo ??
                  >
                  > Lembro que estou falando de um aplicativo que direcione a outros
                  processadores determinadas tarefas e n�o em abrir threads, pois pelo
                  que vi as threads s�o abertas dentro do processo da aplica��o e s�o
                  processadas pelo mesmo processador que processa a aplica��o principal,
                  ou seja, � processado em paralelo com a aplica�ao principal por�m no
                  mesmo processador.
                  >
                  > Se em java for poss�vel vou estudar mais a respeito, sen�o, vou
                  ver em C mesmo como funciona para conhecer mais sobre o assunto.
                  >
                  > Grato.
                  >
                  > Ricardo Coelho.
                  >
                  >
                  > ------------ --------- --------- ---
                  > Abra sua conta no Yahoo! Mail, o �nico sem limite de espa�o para
                  armazenamento!
                  >




                  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento!

                • Victor Hogemann
                  Cara, Threads são executadas no mesmo processo em qualquer sistema operacional, é isso que elas são, caminhos de execução concorrente dentro de um mesmo
                  Message 8 of 8 , Nov 12, 2007
                  • 0 Attachment
                    Cara,

                    Threads são executadas no mesmo processo em qualquer sistema operacional, é isso que elas são, caminhos de execução concorrente dentro de um mesmo processo. O que não impede que as threads sejam executadas em processadores diferentes em sistemas multiprocessados.

                    O grande impecilho do multiprocessamento em Java é o limite do tamanho dos processos em ambientes 32bit. Um mesmo processo não pode ter um tamanho superior a 2GB, e isso gera algumas dores de cabeça pra quem tem que processar grandes volumes de dados de uma vez só... A solução pra isso é rodar várias instancias da JVM, ou então migrar pra arquitetura de 64bits... se você perguntar pra Sun com certeza eles vão te recomendar migrar o hardware, pro deles é claro...

                    Outro problema do modelo de threads é que uma thread pode trazer o aplicativo inteiro abaixo se acontecer algum problema na sua execução, é claro que em Java existem alguns mecanismos para evitar isso... mas mesmo assim de vez em quando acontece. Utilizando um modelo de fork, quando um processo filho dá erro normalmente não afeta os demais processos.

                    []s

                    Em 09/11/07, Ricardo Coelho <rcoelhorj@...> escreveu:

                    Valeu pessoal... suas opniões foram bem importantes... Eu ainda não tenho esta necessidade real em um projeto, mas me bateu esta curiosidade devido a carência que vejo no mercado.
                         Quanto as threads vou tentar no linux, pois o windows abre ela no mesmo processo, etou crendo que seja uma limitação do mesmo.
                          E vou dar uma pesquisada no RMI também para me interar mais no assunto.


                         Mais uma vez obrigado pessoal.

                         Abraço.
                         Ricardo Coelho.

                    André Pinto < andrepinto@...> escreveu:

                    Só um pequeno complemento Ricardo,

                    Caso o processo possa ser dividido em "nós" de processamento diferentes, talvez uma solução distribuída ( RMI) atenda à necessidade.

                    abs,
                    André Pinto
                    http://flagranti.blogspot.com/

                    Em 08/11/07, Peter <peterplupo@...> escreveu:
                    Ricardo,

                    Existe várias formas de se desenvolver com processos em Java. Estão descritas no site da Sun, com bastantes códigos de exemplo.
                    Veja em http://java.sun.com/docs/books/tutorial/essential/concurrency/index.html

                    Infelizmente, não há suporte de semáforos em subprocessos em Java. Como threads não são substitutos para processos, acho que temos um ponto contra Java e a favor de outras linguagens aqui, infelizmente.

                    Abraço!

                    Peter P. Lupo
                    Undergraduating in Computer Science DCC/UFRJ
                    Sun Certified Java Associate
                    http://pplupo.googlepages.com/
                    Cell. +55 (021) 81742487


                    Fabio Ribeiro wrote:
                    Caro Ricardo,

                    Estamos falando de uma camada superior.
                    O desenvolvimento desse tipo de software esta na camada de sistema
                    operacional. Java é executado sob a camada do sistema operacional (
                    JVM ) sendo assim, o Sistema operacional é que gerencia o acesso a
                    processadores. Como a JVM esta uma camada acima, ela será atendida de
                    forma transparente pelo SO.

                    O Acesso direto ao processador, registradores internos, etc.. pode ser
                    acessado através de programas em C. Pois este tipo de desenvolvimento
                    permite chamadas de baixo nível. Esse tipo de desenvolvimento é
                    específico e requer um conhecimento apurado da estrutura do sistema
                    como um todo. Imagine a situação de 2 processadores rodando o mesmo
                    software e não atendendo nenhuma outra solicitação do sistema.
                    Provavelmente, haveria um travamento de algum outro software que
                    permaneceu aguardando seu time-slice.

                    Há de se ter em mente qual o objetivo do software em questão. Pois uma
                    vez que se desenvolve especificamente para uma plataforma de hardware,
                    perde-se tudo aquilo que são qualidades em Java : Portabilidade,
                    independência de plataforma, etc...

                    Espero ter ajudado.
                    --
                    Fabio Ribeiro
                    < www.fabioribeiro.com.br>

                    --- In riojug@yahoogroups.com, Ricardo Coelho <rcoelhorj@...> wrote:
                    >
                    > Boa noite pessoal,
                    >
                    > Estou interessado em estudar mais o desenvolvimento de
                    aplicativos que possam ser processados por v�rios processadores, um
                    amigo, me recomendou estudar C, pois o mesmo possui bibliotecas para
                    tal tipo de aplica��o.
                    >
                    > A minha pergunta �: Em java temos tamb�m esta possibilidade de
                    se desenvolver um aplicativo capaz de ser processado por mais de um
                    processador ao mesmo tempo ??
                    >
                    > Lembro que estou falando de um aplicativo que direcione a outros
                    processadores determinadas tarefas e n�o em abrir threads, pois pelo
                    que vi as threads s�o abertas dentro do processo da aplica��o e s�o
                    processadas pelo mesmo processador que processa a aplica��o principal,
                    ou seja, � processado em paralelo com a aplica�ao principal por�m no
                    mesmo processador.
                    >
                    > Se em java for poss�vel vou estudar mais a respeito, sen�o, vou
                    ver em C mesmo como funciona para conhecer mais sobre o assunto.
                    >
                    > Grato.
                    >
                    > Ricardo Coelho.
                    >
                    >
                    > ---------------------------------
                    > Abra sua conta no Yahoo! Mail, o �nico sem limite de espa�o para
                    armazenamento!
                    >




                    Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento!




                    --
                    Victor Guilherme Hogemann
                    http://victor.hogemann.eti.br
                  Your message has been successfully submitted and would be delivered to recipients shortly.