Escrita de número em hexadecimal em Assembly Puro para Linux 64bits (Nasm - Netwide Assemble)

A primeira versão deste código foi publicada no formato de 32 bits: http://www.vivaolinux.com.br/script/Escrita-de-um-numero-em-hexadecimal-na-tela-em-Assembly-Puro-para-Linux-x86-(Nasm-Netwide-Assemble/ Esta versão foi criada no formato de 64 bits, para criação de objeto e linkedição em formato ELF64. Semelhante ao outro, este código utiliza-se da pilha para a reordenação dos dígitos após as divisões sucessivas. Também escrito para usar variáveis globais, não tão adequadas ou elegantes como variáveis locais ou a pilha, visando facilitar a compreensão uma visão intuitiva do programa. Conforme os restos das divisões são obtidos, serão empilhados, sendo acrescidos do endereço inicial da string "digit", de modo que o valor empilhado aponta exatamente - é um endereço de memória, vulgo ponteiro - para o dígito que deve ser impresso. Conforme são desempilhados os valores, os dígitos vão sendo impressos. O último item a ser desempilhado é um ponteiro para o "new line" armazenado ao final do código. Este caractere identifica o final da escrita dos dígitos, feita através de um cmp (comparação). As diferenças entre a versão de 32 bits e a de 64 bits ficam visíveis no uso das interrupções, chamadas de interrupções e registradores. interrupção de escrita 32 bits = 4 interrupção de escrita 64 bits = 1 interrupção de encerramento 32 bits = 1 interrupção de encerramento 64 bits = 60 chamada de interrupção 32 bits = "int 0x80" chamada de interrupção 32 bits = "syscall" registradores usados no código com interrupções de 32 bits = eax. ebx, ecx, edx registradores usados no código com interrupções de 64 bits = rax. rdi, rsi, rdx No caso dos registradores, percebe-se que em 64 bits houve uma pequena mudança na analogia usual.

Por: Perfil removido


Criando usuário no sistema operacional Debian 8

Script básico para adicionar usuário no sistema operacional Debian 8 "Jessie", no qual pergunta qual o nome do usuário e login.

Por: Perfil removido


Listando processos via /proc/PID

Esse script lista os processos via /proc/.

Por: Perfil removido


Escrita de número em decimal em Assembly Puro para Linux 64 bits (Nasm - Netwide Assembler)

A primeira versão deste código foi criada no formato de 32 bits: http://www.vivaolinux.com.br/script/Escrita-de-um-numero-em-decimal-na-tela-em-Assembly-Puro-para-Linux-x86-(Nasm-Netwide-Assembler)/ Esta versão está no formato de 64 bits, para criação de objeto e linkedição em formato ELF64. Semelhante à primeira, este código utiliza-se da pilha para a reordenação dos dígitos após as divisões sucessivas. Também escrito para usar variáveis globais, não tão adequadas ou elegantes como variáveis locais ou a pilha, visando facilitar a compreensão e uma visão intuitiva do programa. Conforme os restos das divisões são obtidos, serão empilhados, sendo acrescidos do endereço inicial da string "digit", de modo que o valor empilhado aponta exatamente - é um endereço de memória, vulgo ponteiro - para o dígito que deve ser impresso. Conforme são desempilhados os valores, os dígitos vão sendo impressos. O último item a ser desempilhado é um ponteiro para o "new line" armazenado ao final do código. Este caractere identifica o final da escrita dos dígitos, feita através de um cmp (comparação). As diferenças entre a versão de 32 bits e a de 64 bits ficam visíveis no uso das interrupções, chamadas de interrupções e registradores. - Interrupção de escrita 32 bits = 4 - Interrupção de escrita 64 bits = 1 - Interrupção de encerramento 32 bits = 1 - Interrupção de encerramento 64 bits = 60 - Chamada de interrupção 32 bits = "int 0x80" - Chamada de interrupção 32 bits = "syscall" - Registradores usados no código com interrupções de 32 bits = eax. ebx, ecx, edx - Registradores usados no código com interrupções de 64 bits = rax. rdi, rsi, rdx No caso dos registradores, percebe-se que em 64 bits houve uma pequena mudança na analogia usual.

Por: Perfil removido


sbinstall.sh - Descompacta, compila e instala SlackBuild

Instala um programa baixado pelo SlackBuilds. Versão 1 - Descompacta o SlackBuild, compila e instala o programa, só funciona com arquivos .tar.gz. O objetivo é conseguir automatizar o processo de instalação de programas, pelo site http://slackbuilds.org/. Eu sei que já existem programas que fazem isso, como o sbopkg e o slpkg (e esse baixa a e instala até as dependencias), mas é interessante criar nossos próprios scripts ou programas, vocês sabem! ;) O próximo passo é fazer com que o script seja capaz de lidar com outros tipos de arquivos compactos, como .rar, .zip, tar.bz2 etc. Quem tiver interesse em me ajudar, eu seria grato, não sou expert em Shell Script, mas é praticando que se aprende, e nada melhor que compartilhar o conhecimento adquirido!

Por: Perfil removido






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts