並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 63件

新着順 人気順

newlibの検索結果1 - 40 件 / 63件

  • 西暦3000年、地球外生命体はlinux kernelをコンパイルできるのか? - Qiita

    この問いかけにまじめに考えてみる。 ほぼ全てのソースコードってランタイムなりコンパイラとして何かしら別のものに依存しているはずだけど、最終的に行き着くだろうOSとかってそもそもGitHub上に存在するのかなhttps://t.co/KNME92Qcz8 — yuta (@yuta0381) July 18, 2020 TL;DR(要約) RISC-VだったらCPUから作れそう。エミュレータのコード見て自作もできそう。 RISC-Vだったら、多分linux動かすところまで行けるよ! x86とかだったら、動かそうとするけどライブラリ古くて苦しむよ! Linux Kernelだけ見ても、GitHub上にすべての依存する「最新の」コードは存在していない。若干古かったりするので、そこらへんは地球外生命体の人に頑張ってもらうしかない。 前提条件 西暦2500年、地球人類は滅亡した(唐突)。北極には、か

      西暦3000年、地球外生命体はlinux kernelをコンパイルできるのか? - Qiita
    • Rustで自作OSをしているときのデバッグ例 - syscall 命令と仲良くなりたい!前編 - /var/log/hikalium

      この記事は自作OS Advent Calendar 2022の17日目の記事です。他の記事も是非お楽しみください!(そして書ける方はぜひ参加してみてください!!) 前回(?)までのあらすじ hikaliumは自作OS上で動くアプリからsyscall命令を使ってシステムコールを呼べるようにしようと頑張っていたが、なぜか発生するトリプルフォルトによりQEMUが再起動してしまい、3時間のデバッグの末力尽きてしまった。一体なぜ例外が発生するのか、その謎を解くため、我々は数日の休息をとったのち、バイナリの森へと旅立った…。 前回(という名の配信アーカイブ): www.youtube.com 状況を整理しよう バイナリの森は危険だ。無闇に動きまわっては、x86の沼に足をとられて命を落としかねない。まずは我々の向かっていた先と、これまでに得た情報をまとめることにしよう。 どこへ向かっていたのか 我々のひ

        Rustで自作OSをしているときのデバッグ例 - syscall 命令と仲良くなりたい!前編 - /var/log/hikalium
      • 開発ツール(QEMU)への貢献(前半) 〜自作OSのいまと昔 [第3回] | さくらのナレッジ

        これまでの記事では、自作OSとそれを取り巻く状況について触れてきましたが、今回と次回は少し視点を変えて、自作OS開発で使うツールのデバッグや、それを通した貢献(contribute)の話をしたいと思います。 自作OSに限らず何かを開発する際には、たいていの場合、他の誰かが作ったツールを利用することになります。たとえば、CコンパイラとしてのClangや、デバッグのためのエミュレータとしてのQEMU, CやC++の標準ライブラリとしてのNewlibやlibc++などを、私の自作OS liumOS では利用しています。これらのソフトウエアは、ソースコードが公開されており、インターネット上の誰もが開発に参加することが可能です。 これらの開発ツールは、世界中のたくさんのユーザーに利用されるうちに、バグが見つかったり機能追加のリクエストが来たりすることで、完成度が次第に高まってきます。しかし、多くの人

          開発ツール(QEMU)への貢献(前半) 〜自作OSのいまと昔 [第3回] | さくらのナレッジ
        • Nature Remo開発におけるテストフレームワーク『Catch2』の活用方法を紹介します - Nature Engineering Blog

          3日目! Nature Engineering Blog祭3日目は、ファームウェアエンジニアの中林 (id:tomo-wait-for-it-yuki) がお送りします。みなさま、自動テストはお好きですか?私は大好きです。手動で何度も同じことをテストするのは苦痛ですが、それをプログラミングのタスクに転化できるとなれば、最高ですよね! 今回はNature Remoのファームウェア開発で使用しているユニットテストフレームワーク『Catch2』の活用方法を紹介します。ESP-IDFで使えるテンプレートプロジェクトも用意してありますので、少し長いですが、最後まで楽しく読んでいただけると嬉しいです。 Catch2 Catch2は (modern) C++で書かれたユニットテストフレームワークです。Nature RemoのファームウェアはC言語で書いていますが、テストフレームワークはC++で書かれたも

            Nature Remo開発におけるテストフレームワーク『Catch2』の活用方法を紹介します - Nature Engineering Blog
          • Unikernelについての現状調査 - Fixstars Tech Blog /proc/cpuinfo

            ※本記事の内容は、2020年2月の約1か月間のインターンシップにおける成果です。 Unikernelについて知っていますか? 私は知っています。 Unikernelとは、アプリケーションをライブラリOSの必要最小限の機能のみとリンクさせ、単一アドレス空間で、直接ハードウェア上やハイパーバイザ上にて動作するようにしたマシンイメージのことです。 本記事では、車載向けのマイコンなどの組み込みシステム上において、最小サイズのマシンイメージで目的の機能を実現することができる手段として、Unikernelという方向性に可能性を見出し、その概要と、2020年2月現在に現存しているUnikernelのプロジェクトについて調査しました。 Unikernelとは Unikernelという呼称は、2013年に発表された論文 Unikernels: Library Operating Systems for th

              Unikernelについての現状調査 - Fixstars Tech Blog /proc/cpuinfo
            • GitHub - picolibc/picolibc: picolibc - a C library designed for embedded 32- and 64- bit systems.

              Picolibc source comes from a variety of places and has a huge variety of copyright holders and license texts. While much of the code comes from Newlib, none of the GPL-related bits used to build the library are left in the repository, so all of the source code uses BSD-like licenses, a mixture of 2- and 3- clause BSD itself and a variety of other (mostly older) licenses with similar terms. There a

                GitHub - picolibc/picolibc: picolibc - a C library designed for embedded 32- and 64- bit systems.
              • ArmマイコンのRTOSとして充実する「Mbed OS」に一抹の不安

                IoT(モノのインターネット)市場が拡大する中で、エッジ側の機器制御で重要な役割を果たすことが期待されているリアルタイムOS(RTOS)について解説する本連載。第5回は、プロセッサコアIPベンダーのArmが独自に展開する「Mbed OS」を取り上げる。 ArmのリアルタイムOS(RTOS)「Mbed OS」は過去に何度か取り上げさせていただいた。最初は2014年のこちらの記事で、次いで2015年のこちらの記事、mbed 3.0の話、連載「IoT観測所」の第13回と第39回、そして2018年の「Mbed Linux OSに」絡んだ話といった具合だ。 加えて言うなら、2020年7月にArmがISG(IoTサービスグループ)を切り離すという報道があり、Mbed OSはどうなるのか? と思っていたら、最近になってロイターがこの計画が中止になったと報じている。これが事実ならまぁ一安心ではあるのだが、

                  ArmマイコンのRTOSとして充実する「Mbed OS」に一抹の不安
                • Rust製の組み込みOS『Tock』について調べてみた - 重力に縋るな

                  これは 自作OS Advent Calendar 2019 の9日目の記事です. はじめに 最近大人気ですよね,Rust. 全人類Rust書いとる...俺は... システムプログラミング言語ですし,LLVMを使っているので色々なアーキテクチャ向けにコンパイルできますし, 安全性を重視しているので,RustでOSが書けるようになると色々と面白そうです. とはいえ,なんだかんだでちゃんと使ってみようという気になれず,まだあまり書いたことがありません. そこで,今回はRustで書かれたOSであるTockを使って,モダンな言語でのOSの作り方やRustそのものについて調べてみようと思います. Tockとは TockはRustで書かれたCortex-MやRISC-Vで動く組み込みOSです. https://github.com/tock/tock 最近はSTM32でも動くらしいですね. https:

                    Rust製の組み込みOS『Tock』について調べてみた - 重力に縋るな
                  • X68000の開発環境について - Qiita

                    X68000 Z がにわかに注目を集めています。 これをきっかけに何か作ってみたくなった方のために、X68000(以下、X68k)の開発環境についてまとめてみました。 ネイティブ開発環境 X68kの実機、またはエミュレータのHuman68k上で動作する開発環境です。 X68k現役当時はこの環境しかありませんでしたが、今となっては、特に実機でCコンパイラを動かすのは速度的な意味で結構厳しそうです。エミュレータ上でCPUクロックを上げて使うのが良いと思います。 シャープ純正Cコンパイラ (XC) 概要 シャープから発売されていた純正の開発環境です。(商品名 C Compiler PRO-68K) Cコンパイラ、アセンブラ、リンカ、デバッガにライブラリ群など、ソフトウェア開発に必要なツール類一通りと、分厚い大量のマニュアルのセットでした。 開発者 シャープ株式会社 入手先 現在はソフトウェア本体

                      X68000の開発環境について - Qiita
                    • System Calls: RISCV OS in Rust

                      This is chapter 7 of a multi-part series on writing a RISC-V OS in Rust. Table of Contents → Chapter 6 → (Chapter 7) → Chapter 8 23 January 2020: Patreon only 29 January 2020: Public Video https://www.youtube.com/watch?v=6GW_jgkdGPw Overview System calls are a way for unprivileged, user applications to request services from the kernel. In the RISC-V architecture, we invoke the call using the ecall

                      • 第684回 UbuntuからRaspberry Pi Picoを使う | gihyo.jp

                        2021年の1月にRaspberry Piシリーズに「Raspberry Pi Pico」が追加されました。これは「マイコンボード」と呼ばれるカテゴリーの製品です。今回はUbuntu上でPico用のファームウェアをビルドし、Picoに書き込み、起動する手順を説明します。 Raspberry Pi Pico Raspberry Pi Picoは、これまでのRaspberry Piとは異なり「マイコンボード」とも呼ばれる、省電力・小サイズ・低コストなデバイスです。プロセッサーとしてデュアルコアのCortex-M0+(最大133MHz)に加えて、264KBのSRAMや2MBのFlash Memoryが搭載されています。結果的に、Debian/Ubuntuのような一般的なLinux OSは動作しません[1]⁠。 Raspberry Pi Picoのマイコンボードとしての特徴のひとつが余計な専用ツー

                          第684回 UbuntuからRaspberry Pi Picoを使う | gihyo.jp
                        • Release SDK 1.5.0 · raspberrypi/pico-sdk

                          This release contains new libraries and functionality, along with numerous bug fixes and documentation improvements. Highlights are listed below, or you can see the full list of individual commits here, and the full list of resolved issues here. Note, these release notes are long and may appear truncated in the "Releases" tab; you can see the full version here. New Board Support The following boar

                            Release SDK 1.5.0 · raspberrypi/pico-sdk
                          • 自作OSにprintfを実装する

                            概要 printfに代表される可変長引数関数の仕組みを調べ、muslの実装を読み、それを自作OSにフルスクラッチで実装するという試みです。タイトルにはprintfとありますが、現状自作OSにメモリ管理機能なんてない(mallocなんてない)のでまずvsnprintfを実装し、それを用いてprintf(もどき)を作ることにします。環境はx64を前提とします。 標準ライブラリで実装してみる 最終的にはフルスクラッチで実装しますが、完成形を見ておこうということで標準ライブラリを用いて実装してみます。 #include <stdio.h> #include <stdarg.h> #define BUF_SIZ 100 void myprintf(char *fmt, ...) { char buf[BUF_SIZ]; va_list ap; int ret; va_start(ap, fmt);

                              自作OSにprintfを実装する
                            • atoi関数のかしこい実装 - yohhoyの日記

                              C標準ライブラリ Muslのatoi関数実装 では、符号付き整数オーバーフロー回避のため負数範囲で10進数値を減算してゆき最後に符号反転を行っている。 int atoi(const char *s) { int n=0, neg=0; while (isspace(*s)) s++; switch (*s) { case '-': neg=1; case '+': s++; } /* Compute n as a negative number to avoid overflow on INT_MIN */ while (isdigit(*s)) n = 10 * n - (*s++ - '0'); return neg ? n : -n; } C言語の符号付き整数型(int)では “2の補数” 表現が用いられるため*1、最大値INT_MAXより最小値INT_MINの絶対値が 1 だけ大き

                                atoi関数のかしこい実装 - yohhoyの日記
                              • E2565 – 講演会「“あなた”はなぜ,図書館に行くのか」<報告>

                                講演会「“あなた”はなぜ,図書館に行くのか」<報告> 神戸・図書館ネットワーク・大西典子(おおにしのりこ) 2022年10月24日,同志社大学准教授の佐藤翔氏を迎え,神戸・図書館ネットワーク主催講演会「今,公共図書館を考えるPart10“あなた”はなぜ,図書館に行くのか~図書館利用の決定要因と図書館像・利用者像~」を開催した。COVID-19感染拡大による中止も乗り越え,企画から3年越しの開催となった。講師の佐藤氏は,〈仮称〉新三宮図書館整備検討会委員を務めるなど,神戸の図書館に関わっており,講演を依頼した。 私たち,神戸市立図書館を利用する市民による「神戸・図書館ネットワーク」は,同館応援団を称しているのだが,貸出以外に関して図書館のことを知らないことに気づいた。そこで,図書館への理解を深めるために「今,公共図書館を考える」をテーマに,学習会,講演会を重ねている。2000年の発足以来,1

                                  E2565 – 講演会「“あなた”はなぜ,図書館に行くのか」<報告>
                                • Rewriting m4vgalib in Rust - Cliffle

                                  2019-02-23 Executive summary Motivation Rust has a package manager On no_std On API design On binary size On memory safety Bounds checks On safety from data races If this isn’t your first time visiting my blog, you may recall that I’ve spent the past several years building an elaborate microcontroller graphics demo using C++. Over the past few months, I’ve been rewriting it — in Rust. This is an i

                                  • ESP-IDF v4.3でESP32のヒープ残量が10KB減る問題の調査 - Nature Engineering Blog

                                    ファームウェアエンジニアの中林 (id:tomo-wait-for-it-yuki) です。ESP32愛好家の皆様、ESP-IDF v4.3で次の変更が入ったことにお気づきでしょうか? Heap: Switched heap algorithm to one based on TLSF, improves performance especially when using a high number of allocations in PSRAM リリースノート1にさらっと1行だけ書かれていますが、「え?ヒープアロケータ変わったの?インパクト大きくない?」というのが最初の印象でした。本エントリではこのさらっと入った変更の、意外と大きな影響について解説して参りたいと思います。 本エントリの要点は次の通りです。 ESP-IDF v4.3からヒープアロケータがフリーリストアロケータからTLSFア

                                      ESP-IDF v4.3でESP32のヒープ残量が10KB減る問題の調査 - Nature Engineering Blog
                                    • 【macOS】ARMのGCCコンパイル環境を構築する(brewから公式「GNU Arm Embedded Toolchain」をインストール)

                                      「arm-none-eabi-gcc」パッケージを、下記コマンドでインストール。 $ brew update $ brew upgrade $ brew tap ArmMbed/homebrew-formulae $ brew install arm-none-eabi-gcc インストール完了したら、下記コマンドでコンパイラが実行できるか確認。 $ arm-none-eabi-gcc --version arm-none-eabi-gcc (GNU Tools for Arm Embedded Processors 8-2018-q4-major) 8.2.1 20181213 (release) [gcc-8-branch revision 267074] Copyright (C) 2018 Free Software Foundation, Inc. This is free so

                                        【macOS】ARMのGCCコンパイル環境を構築する(brewから公式「GNU Arm Embedded Toolchain」をインストール)
                                      • picolibc

                                        Picolibc Version 1.0 Released I wrote a couple of years ago about the troubles I had finding a good libc for embedded systems, and for the last year or so I've been using something I called 'newlib-nano', which was newlib with the stdio from avrlibc bolted on. That library has worked pretty well, and required very little work to ship. Now that I'm doing RISC-V stuff full-time, and am currently wor

                                        • Programming with RISC-V Vector Instructions

                                          Perhaps the most interesting part of the open RISC-V instruction set architecture (ISA) is the vector extension (RISC-V "V"). In contrast to the average single-instruction multipe-data (SIMD) instruction set, RISC-V vector instructions are vector length agnostic (VLA). Thus, a RISC-V "V" CPU is flexible in choosing a vector register size while RISC-V "V" binary code is portable between different C

                                          • Filesystems: RISCV OS in Rust

                                            This is chapter 10 of a multi-part series on writing a RISC-V OS in Rust. Table of Contents → Chapter 9 → (Chapter 10) → Chapter 11 4 May 2020: Patreon only 11 May 2020: Public Video & Reference Material I have taught operating systems at my university, so I will link my notes from that course here regarding the virt I/O protocol. This protocol has changed over the years, but the one that QEMU imp

                                            • Getting Graphical Output from our Custom RISC-V Operating System in Rust – Stephen Marz

                                              An operating system is used to make our job easier when using graphics. In our instance, in addition to everything else. In this post, we will be writing a GPU (graphics processing unit) driver using the VirtIO specification. In here, we will allow user applications to have a portion of the screen as RAM–with what is commonly known as a framebuffer. Contents OverviewPixels and ResolutionThe GPU Vi

                                              • Compiling History: A brief tour of C compilers

                                                Photo by Simon Kadula on UnsplashAs the story of C’s birth goes hand in hand with the creation of Unix, the first C compiler can be traced back to the early 1970’s. I've detailed the history of C in my previous article Tracing the Lines: From the Telephone to Unix, which includes a brief summary of this history. Around 1971, Ken decided that Unix needed to be ported to a higher level language. Den

                                                  Compiling History: A brief tour of C compilers
                                                • 近くの図書館に行こう!良本と出会い、マイライブラリーに追加〜。 - けみかる、らじかる、ぷれすとリアクション

                                                  「ラフマニノフと共に歩む♪」に、ようこそ! Welcome to the room where I propose something better with Rachmaninov. 貴殿のご訪問に、心より感謝申し上げます✨ 再訪の方も、初めてお越しの方も、誠にありがとうございます。 きちんと思いを伝える、確かに伝えることが、これからますます大切になると感じているラフマニストです。その理由も、日本人の気質である聞く側責任主義から、相手にきちんと伝える側責任主義に変えていく使命をラフマニストが帯びたからであります。どれだけちゃんと説明できるか、これは結構大事なことです。ですから、2023年はこのブログを通して、しっかりアピールしていきたいと思います。 ラフマニストは、隔週で図書館に行き、8〜10冊の本を借りて読む事をルーティンにしています。ラフマニストの図書館ライフは、高校の時に始まりまし

                                                    近くの図書館に行こう!良本と出会い、マイライブラリーに追加〜。 - けみかる、らじかる、ぷれすとリアクション
                                                  • しまもん | はすみきん | [Ruby Advent Calendar 2021] PicoRubyあるいはRuby言語のコンパイラについて

                                                    これはRuby Advent Calendar 2021 3日目の記事です。 PicoRubyというマイコン用のRubyをつくっています。 もうすこし正確に書くと、PicoRubyコンパイラというmruby互換の省メモリコンパイラをつくり、それをmruby/cバーチャルマシンと統合しています。 本稿では、Ruby言語のコンパイラについて書きます。 【注意】以下、とくに調べもせず記憶だけで書くので、不正確です。 コンパイラは一般に、3つの段階から構成されます: トークナイザ(スキャナあるいはレキサとも) パーサ(パーザと発音する人もいます。日本の大学でコンピュータサイエンスを学んだ人にこの傾向がありそう。まつもとさんとか) コードジェネレータ(たんにジェネレータとも) トークナイザとパーサをコンパイラ内のフロントエンド、コードジェネレータをバックエンドに分類する考え方もあります。たしかドラゴ

                                                      しまもん | はすみきん | [Ruby Advent Calendar 2021] PicoRubyあるいはRuby言語のコンパイラについて
                                                    • Picolibc 1.0 Released - A New C Library For Embedded Systems - Phoronix

                                                      Picolibc 1.0 Released - A New C Library For Embedded Systems Written by Michael Larabel in Programming on 24 September 2019 at 06:11 AM EDT. 20 Comments Longtime X11 developer Keith Packard -- who these days is focused full-time on RISC-V while working for SiFive -- has released Picolibc 1.0 as a new libc implementation for embedded systems. Even prior to his SiFive employment, Keith was working o

                                                        Picolibc 1.0 Released - A New C Library For Embedded Systems - Phoronix
                                                      • DockerでRISC-V Vector拡張へ入門 (Dockerfile作成編) - Qiita

                                                        はじめに RISC-VのVector拡張(v0.10対応)のプログラム環境の構築をDockerで行ってみました.以下のもののインストールとビルドを行ったリポジトリを作成しました. riscv-gnu-toolchain riscv-isa-sim(spike) riscv-pk イメージサイズは900MB程度に収めたので,自分で一から環境構築をするよりいいと思います.通常これらのインストールとビルドを新しく仮想環境を作成してローカル環境でやると,17GB~程度使用されるのと時間もかかるので,RISC-VのVector拡張を少し試してみたいといった人には良いのではないかと思います. 注) 本記事の内容について,私も詳しくはないので色々間違っていたらすいません. 概要 RISC-VではV拡張(vector extension)の仕様が固まりつつあるようで,現在のstableなバージョンはv0.

                                                          DockerでRISC-V Vector拡張へ入門 (Dockerfile作成編) - Qiita
                                                        • RTOSに緊急の脆弱性、影響受ける製品多く確認を

                                                          米コンピュータ緊急事態対策チーム(US-CERT: United States Computer Emergency Readiness Team)は4月29日(米国時間)、「CISA Releases ICS Advisory on Real-Time Operating System Vulnerabilities|CISA」において、Real-Time Operating Systems (RTOS)およびそのサポートライブラリに複数の脆弱性が存在すると伝えた。これら脆弱性を悪用されると、攻撃者によってクラッシュやリモートコード実行といった予期せぬ動作を引き起こされるおそれがあるとされている。 脆弱性に関する情報は次のページにまとまっている。 Multiple RTOS | CISA 脆弱性が存在するとされるプロダクトおよびバージョンは次のとおり。 Amazon FreeRTOSバー

                                                            RTOSに緊急の脆弱性、影響受ける製品多く確認を
                                                          • PicoLibC is a Lightweight C library for Embedded Systems - CNX Software

                                                            CNX Software – Embedded Systems News Reviews, tutorials and the latest news about embedded systems, IoT, open-source hardware, SBC's, microcontrollers, processors, and more Well-known developer,  Keith Packard has recently announced the launch of “picolibc” through his blog.  Picolibc is a C Library for embedded systems which  is suitable for small micro-controllers, and this standard C library AP

                                                              PicoLibC is a Lightweight C library for Embedded Systems - CNX Software
                                                            • とあるマイコンのクロスコンパイラ | フューチャー技術ブログ

                                                              春の入門祭り🌸の第6弾です はじめにこんにちは、TIG/DXチームの栗田です。もともと宇宙物理を専攻しており、前職では製鉄メーカーでプラントエンジニアをしていました。 最近ではもっぱら工場IoT案件で制御系システムとクラウドをつなぐようなことをしていますが、その前は組み込みマイコンで制御系開発をしていました(人工衛星時代の話)。 IT業界で働き始めると、ソースコードを書いてそれを実行してシステムを動かす、ということを行うことになりますが、その裏で頑張ってくれているのがコンパイラです。普段プログラムを書いていても、「コンパイラ使ったことあるけどその中身までは。。。」「普段Pythonとかで特に意識したことない。」な方もいると思います。 そこで今回は春の入門祭りということで、自分でコンパイラを作ります。ただしコンパイラはコンパイラでも、イチから全部作るのはなかなか大変なので、公開されているコ

                                                                とあるマイコンのクロスコンパイラ | フューチャー技術ブログ
                                                              • RISC-Vのソフトウェアを(限りなくゼロから)作る

                                                                作るってどこから? CH32Vという格安の32ビットRISC-VのMCUシリーズで動くソフトウェアを作ります。今回はCH32V203K8T6という1個120円で買えるMCUを使いました。 こういう組み込み用のMCUにソフトウェアを書く場合、MCUメーカーから配布されるIDE相当のものを使うのがセオリーです。またArduino IDEで使える場合もありますし、最近だとPlatform IOがいろんな組み込みMCUに対して使えたりするらしいですね。でもね…IDEとか使いたくないの、全部コマンドラインでやりたいの、クロスコンパイル環境を自分で構築したいの、そんな気分なの。 なのでツールチェイン、いわゆるCコンパイラとして必須なbinutils, gcc, newlibの3点セットのビルドから初めて、MCUを変換基板にハンダ付けしてブレッドボードに簡易な回路を組んで、LED点滅(通称Lチカ)+シリ

                                                                  RISC-Vのソフトウェアを(限りなくゼロから)作る
                                                                • SHARP Brain 用アプリケーションの作成方法 | OUCC - 大阪大学コンピュータクラブ

                                                                  この記事は OUCC Advent Calendar 2020 の 20 日目の記事です。OS として Windows Embedded CE 6.0、CPU に ARM926EJ-S (Armv5TEJ) を搭載する電子辞書 SHARP Brain 用アプリケーションの作成方法を解説します。 注意点 ここで取り扱うものは、SHARP 公式の内容ではありません。通常、フリーズなどが起こった場合も本体裏のリセットボタンを押せば元に戻りますが、万一何らかの問題が発生しても一切補償できませんので、自己責任で試してください。 新機種の多くには、SHARP 公式のソフトウェア以外を起動できなくするプロテクトが掛かっています。具体的には、ビジネスモデル(PW-SBx)を除く PW-Sx4 以降の機種がそれに該当します。そういった機種での起動方法はこちらを参照してください。 この表で第 1 世代から第

                                                                    SHARP Brain 用アプリケーションの作成方法 | OUCC - 大阪大学コンピュータクラブ
                                                                  • Linux on RISC-V 2022を読む (1) - FPGA開発日記

                                                                    SNSで見つけた、Linux on RISC-Vが現状のRISC-Vを非常に端的に説明していて勉強になると思ったので、読んでみることにした。 以下は読書メモ。といってもほぼ一対一に翻訳してしまっている。 連続で投稿する。何回かに分けて読んでいこうと思う。 kernel-recipes.org Slides from my Linux on @RISC_V talk at @KernelRecipes https://t.co/6Jw5Lyv6eN #kr2022 #riscv pic.twitter.com/xT8MO457ug— Drew Fustini 🐧📣 pdp7@mastodon.social 🐘 (@pdp7) June 3, 2022 mobile.twitter.com RISC-V: フリーでオープンなISA カリフォルニア大学バークレイ校の新しいコンピュータアーキ

                                                                      Linux on RISC-V 2022を読む (1) - FPGA開発日記
                                                                    • Tag: zero-to-main

                                                                      Since 2015, Rust has been redefining what it means to combine the best-in-class aspects of performance, correctness, and developer convenience into one language, without compromise. In this post, we’ll bootstrap a Rust environment on a Cortex-M microcontroller from scratch, and explain a few of the language concepts you might not have seen before. From Zero to main(): Bootstrapping libc with Newli

                                                                      • GitHub - expnkx/fast_io: fast_io is a C++ general-purpose exception-safe RAII I/O library based on C++ 20 Concepts. It is at least ten times faster than cstdio or iostream.

                                                                        Examples https://github.com/expnkx/fast_io_examples Deprecated examples are in https://bitbucket.org/ejsvifq_mabmip/fast_io_deprecated However, they might not work current fast_io since fast_io keeps changing. This i18n repo stores the i18n source files. https://bitbucket.org/ejsvifq_mabmip/fast_io_i18n Online docs https://ewindy.gitee.io/fast_io_rst/index.html Compiler Support GCC 11. You can dow

                                                                          GitHub - expnkx/fast_io: fast_io is a C++ general-purpose exception-safe RAII I/O library based on C++ 20 Concepts. It is at least ten times faster than cstdio or iostream.
                                                                        • 標準Cライブラリいろいろ(GNUを中心に) - 滴了庵日録

                                                                          ※ 独断と偏見が混ざっています。 glibc 言わずと知れたGNUの標準Cライブラリ 主にLinuxで使われる POSIXなどUNIX系OSの標準機能を提供 組込み系で使うには重くてデカい、無用の機能が多い uClibc 組込みLinux向けのGNUの標準Cライブラリ uClinux向けに開発された 標準のLinuxにもMMUのないLinuxにも対応 newlib 組込みマイコン向けのGNUの標準Cライブラリ マイコン用GCCで多く使われる (AVR-GCCでは後述のAVR libcが使われる) 軽量化したnewlib-nanoもある PSoC Creatorではnewlib-nanoがデフォで使われる (printf類の%fも無効がデフォ) redlib CodeRed社(LPCXpressoの開発元)の独自実装 LPCXpressoのCプロジェクトではデフォで使われる (C++だとne

                                                                            標準Cライブラリいろいろ(GNUを中心に) - 滴了庵日録
                                                                          • Yocto よもやま話 第 3 回「Linux の 2038 年問題」 - リネオブログ

                                                                            Yocto よもやま話 第 3 回「Linux の 2038 年問題」 2022 年 07 月 19 日   Yocto Project よもやま話 先月の予告とおり、今回は Linux の 2038 年問題について情報を提供していきます。 2038 年問題とは カーネルの対応 gibc musl ファイルシステム 次回予告 1. 2038 年問題とは? 1969 年に誕生した Unix では、時刻の表現に 1970 年 1 月 1 日 0 時 0 分 0 秒 (GMT)からの経過秒数を採用しています。Unix 類似 OS として開発されてきた Linux も同様に 1970 年 1 月 1 日 0 時 0 分 0 秒 (GMT) を 0 としています。 C 言語の標準仕様である ISO/IEC 9899:1999 では、時刻表現に使用する型として time_t を用いるという定義がありま

                                                                              Yocto よもやま話 第 3 回「Linux の 2038 年問題」 - リネオブログ
                                                                            • 関数ポインタのメモ - Qiita

                                                                              C/C++におけるポインタ/関数ポインタのメモです。 クラスのメンバ関数を関数ポインタに入れる場合などややこしいです。 いちおうGCCで動作確認しました。 C++11が混じってます。 int testFunc(int x) { x++; printf("testFunc(%d)\n", x); return x; } class Human { public: static void Walk() { printf("Human walk.\n"); }; int age = 15; void Run() { printf(" run.\n"); }; }; void checkUseOfPointer() { // ポインタ宣言子 * // 基本型に*をつけると派生型のポインタ型となる // int* p;とする方が文脈上わかりやすいが、ミスを減らすため慣例上int *p;とする //

                                                                                関数ポインタのメモ - Qiita
                                                                              • JVNVU#90467655: 複数の RTOS やライブラリなどにメモリ割り当て処理における脆弱性 ("BadAlloc")

                                                                                JVNVU#90467655 複数の RTOS やライブラリなどにメモリ割り当て処理における脆弱性 ("BadAlloc") 複数の RTOS (Real Time Operating System) 製品やライブラリなどには、メモリ割り当て処理における脆弱性が存在します。 Amazon FreeRTOS Version 10.4.1 Apache Nuttx OS Version 9.1.0 ARM CMSIS-RTOS2 Version 2.1.3 より前のバージョン ARM Mbed OS Version 6.3.0 ARM mbed-ualloc Version 1.3.0 Cesanta Software Mongoose OS v2.17.0 eCosCentric eCosPro RTOS Version 2.0.1 から 4.5.3 まで Google Cloud IoT

                                                                                • 番外編 Part1 MacOSで環境構築を始めよう! – しゅうのマイクロマウス研修

                                                                                  こんにちは、しゅうです。 今回はスラロームの調整や不具合の原因調査の息抜きに、僕が普段から愛用しているMac OSでRXマイコンの開発ができないか調査してました。 と言うわけでまずは、そこに思い至った背景をお話します。 背景 以前のブログでご紹介したRXマイコン用の開発環境CS+はWindows用のものでした。Mac OSやLinuxでは動かないもので、今までは会社の貸し出しWindowsPCを借りて、Pi:Coの開発を進めてきました。Macでマニュアルを読んだり調べ物をしたりして、WindowsPCでコーディングをしていました。OSを行ったり来たりするのが、思いの外面倒で・・・疲れちゃいますね。(もしかしたら仮想マシンとかデュアルブートを使った方が良かったかもですねw) それがひと段落したということで、なんとか自分のMacで開発ができるようにしたいなって思い至りました!使用するデバイスを

                                                                                    番外編 Part1 MacOSで環境構築を始めよう! – しゅうのマイクロマウス研修